diff --git a/.docs.version b/.docs.version index fa14a31928..65ff5b20c5 100644 --- a/.docs.version +++ b/.docs.version @@ -1 +1 @@ -5c197d5a1e30d3254088221de8e3b1f82d37b8dd +bb1b881ba9806d63dc07f76fc4082158eef07974 diff --git a/aws-cloudformation-schema/aws-appconfig-configurationprofile.json b/aws-cloudformation-schema/aws-appconfig-configurationprofile.json index 97d34d76c0..90bee6bf6f 100644 --- a/aws-cloudformation-schema/aws-appconfig-configurationprofile.json +++ b/aws-cloudformation-schema/aws-appconfig-configurationprofile.json @@ -1,5 +1,4 @@ { - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig", "tagging" : { "permissions" : [ "appconfig:TagResource", "appconfig:UntagResource", "appconfig:ListTagsForResource" ], "taggable" : true, @@ -8,6 +7,13 @@ "tagProperty" : "/properties/Tags", "cloudFormationSystemTags" : true }, + "typeName" : "AWS::AppConfig::ConfigurationProfile", + "readOnlyProperties" : [ "/properties/ConfigurationProfileId", "/properties/KmsKeyArn" ], + "description" : "An example resource schema demonstrating some basic constructs and validation rules.", + "createOnlyProperties" : [ "/properties/LocationUri", "/properties/Type", "/properties/ApplicationId" ], + "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/ConfigurationProfileId" ], + "required" : [ "LocationUri", "ApplicationId", "Name" ], + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig", "handlers" : { "read" : { "permissions" : [ "appconfig:GetConfigurationProfile", "appconfig:ListTagsForResource" ] @@ -33,12 +39,8 @@ "permissions" : [ "appconfig:DeleteConfigurationProfile" ] } }, - "typeName" : "AWS::AppConfig::ConfigurationProfile", - "readOnlyProperties" : [ "/properties/ConfigurationProfileId", "/properties/KmsKeyArn" ], - "description" : "An example resource schema demonstrating some basic constructs and validation rules.", - "createOnlyProperties" : [ "/properties/LocationUri", "/properties/Type", "/properties/ApplicationId" ], + "writeOnlyProperties" : [ "/properties/DeletionProtectionCheck" ], "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/ConfigurationProfileId" ], "definitions" : { "Validators" : { "description" : "A list of methods for validating the configuration.", @@ -128,6 +130,11 @@ "type" : "string", "maxLength" : 2048 }, + "DeletionProtectionCheck" : { + "description" : "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html", + "type" : "string", + "enum" : [ "ACCOUNT_DEFAULT", "APPLY", "BYPASS" ] + }, "ApplicationId" : { "pattern" : "[a-z0-9]{4,7}", "description" : "The application ID.", @@ -148,6 +155,5 @@ "type" : "string", "maxLength" : 128 } - }, - "required" : [ "LocationUri", "ApplicationId", "Name" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-appconfig-environment.json b/aws-cloudformation-schema/aws-appconfig-environment.json index c5eb7317f3..6eb4eb73c8 100644 --- a/aws-cloudformation-schema/aws-appconfig-environment.json +++ b/aws-cloudformation-schema/aws-appconfig-environment.json @@ -1,5 +1,4 @@ { - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig.git", "tagging" : { "permissions" : [ "appconfig:TagResource", "appconfig:UntagResource", "appconfig:ListTagsForResource" ], "taggable" : true, @@ -8,6 +7,13 @@ "tagProperty" : "/properties/Tags", "cloudFormationSystemTags" : true }, + "typeName" : "AWS::AppConfig::Environment", + "readOnlyProperties" : [ "/properties/EnvironmentId" ], + "description" : "Resource Type definition for AWS::AppConfig::Environment", + "createOnlyProperties" : [ "/properties/ApplicationId" ], + "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/EnvironmentId" ], + "required" : [ "Name", "ApplicationId" ], + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig.git", "handlers" : { "read" : { "permissions" : [ "appconfig:GetEnvironment", "appconfig:ListTagsForResource" ] @@ -33,12 +39,8 @@ "permissions" : [ "appconfig:GetEnvironment", "appconfig:DeleteEnvironment" ] } }, - "typeName" : "AWS::AppConfig::Environment", - "readOnlyProperties" : [ "/properties/EnvironmentId" ], - "description" : "Resource Type definition for AWS::AppConfig::Environment", - "createOnlyProperties" : [ "/properties/ApplicationId" ], + "writeOnlyProperties" : [ "/properties/DeletionProtectionCheck" ], "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/ApplicationId", "/properties/EnvironmentId" ], "definitions" : { "Monitor" : { "description" : "Amazon CloudWatch alarm to monitor during the deployment process.", @@ -112,6 +114,11 @@ "$ref" : "#/definitions/Monitor" } }, + "DeletionProtectionCheck" : { + "description" : "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html", + "type" : "string", + "enum" : [ "ACCOUNT_DEFAULT", "APPLY", "BYPASS" ] + }, "ApplicationId" : { "pattern" : "[a-z0-9]{4,7}", "description" : "The application ID.", @@ -132,6 +139,5 @@ "type" : "string", "maxLength" : 64 } - }, - "required" : [ "Name", "ApplicationId" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-autoscaling-autoscalinggroup.json b/aws-cloudformation-schema/aws-autoscaling-autoscalinggroup.json index 1aa089cbea..67e163dade 100644 --- a/aws-cloudformation-schema/aws-autoscaling-autoscalinggroup.json +++ b/aws-cloudformation-schema/aws-autoscaling-autoscalinggroup.json @@ -40,14 +40,16 @@ "additionalProperties" : false, "definitions" : { "AvailabilityZoneImpairmentPolicy" : { - "description" : "", + "description" : "Describes an Availability Zone impairment policy.", "additionalProperties" : false, "type" : "object", "properties" : { "ZonalShiftEnabled" : { + "description" : "If ``true``, enable zonal shift for your Auto Scaling group.", "type" : "boolean" }, "ImpairedZoneHealthCheckBehavior" : { + "description" : "Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*.", "type" : "string", "enum" : [ "IgnoreUnhealthy", "ReplaceUnhealthy" ] } @@ -186,6 +188,7 @@ "type" : "object", "properties" : { "InstanceFamily" : { + "description" : "", "type" : "string" } } @@ -240,6 +243,7 @@ "type" : "object", "properties" : { "References" : { + "description" : "", "$ref" : "#/definitions/PerformanceFactorReferenceSetRequest" } } @@ -363,11 +367,12 @@ } }, "AvailabilityZoneDistribution" : { - "description" : "", + "description" : "``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.", "additionalProperties" : false, "type" : "object", "properties" : { "CapacityDistributionStrategy" : { + "description" : "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.", "type" : "string", "enum" : [ "balanced-best-effort", "balanced-only" ] } @@ -458,6 +463,7 @@ "type" : "object", "properties" : { "Cpu" : { + "description" : "", "$ref" : "#/definitions/CpuPerformanceFactorRequest" } } @@ -705,7 +711,7 @@ "type" : "string" }, "AvailabilityZoneImpairmentPolicy" : { - "description" : "", + "description" : "The Availability Zone impairment policy.", "$ref" : "#/definitions/AvailabilityZoneImpairmentPolicy" }, "TargetGroupARNs" : { @@ -802,7 +808,7 @@ "$ref" : "#/definitions/NotificationConfiguration" }, "AvailabilityZoneDistribution" : { - "description" : "", + "description" : "The instance capacity distribution across Availability Zones.", "$ref" : "#/definitions/AvailabilityZoneDistribution" }, "MetricsCollection" : { diff --git a/aws-cloudformation-schema/aws-batch-jobdefinition.json b/aws-cloudformation-schema/aws-batch-jobdefinition.json index 80afca3157..bf72095ff9 100644 --- a/aws-cloudformation-schema/aws-batch-jobdefinition.json +++ b/aws-cloudformation-schema/aws-batch-jobdefinition.json @@ -1,94 +1,48 @@ { - "typeName" : "AWS::Batch::JobDefinition", - "description" : "Resource Type definition for AWS::Batch::JobDefinition", - "additionalProperties" : false, - "properties" : { - "Parameters" : { - "type" : "object" - }, - "Timeout" : { - "$ref" : "#/definitions/Timeout" - }, - "JobDefinitionName" : { - "type" : "string" - }, - "PropagateTags" : { - "type" : "boolean" - }, - "PlatformCapabilities" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "EksProperties" : { - "$ref" : "#/definitions/EksProperties" - }, - "Type" : { - "type" : "string" - }, - "NodeProperties" : { - "$ref" : "#/definitions/NodeProperties" - }, - "SchedulingPriority" : { - "type" : "integer" - }, - "ContainerProperties" : { - "$ref" : "#/definitions/ContainerProperties" + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging" : { + "permissions" : [ "Batch:TagResource", "Batch:UntagResource" ], + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "tagProperty" : "/properties/Tags", + "cloudFormationSystemTags" : true + }, + "handlers" : { + "read" : { + "permissions" : [ "Batch:DescribeJobDefinitions" ] }, - "EcsProperties" : { - "$ref" : "#/definitions/EcsProperties" + "create" : { + "permissions" : [ "Batch:RegisterJobDefinition", "Batch:TagResource", "Batch:DescribeJobDefinitions", "Iam:PassRole" ] }, - "Id" : { - "type" : "string" + "update" : { + "permissions" : [ "Batch:DescribeJobDefinitions", "Batch:RegisterJobDefinition", "Batch:DeregisterJobDefinition", "Batch:TagResource", "Batch:UntagResource", "Iam:PassRole" ] }, - "RetryStrategy" : { - "$ref" : "#/definitions/RetryStrategy" + "list" : { + "permissions" : [ "Batch:DescribeJobDefinitions" ] }, - "Tags" : { - "type" : "object" + "delete" : { + "permissions" : [ "Batch:DescribeJobDefinitions", "Batch:DeregisterJobDefinition", "Iam:PassRole" ] } }, + "typeName" : "AWS::Batch::JobDefinition", + "description" : "Resource Type definition for AWS::Batch::JobDefinition", + "createOnlyProperties" : [ "/properties/JobDefinitionName" ], + "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/JobDefinitionName" ], "definitions" : { - "NodeRangeProperty" : { - "type" : "object", + "JobTimeout" : { "additionalProperties" : false, - "properties" : { - "Container" : { - "$ref" : "#/definitions/ContainerProperties" - }, - "InstanceTypes" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "EksProperties" : { - "$ref" : "#/definitions/EksProperties" - }, - "TargetNodes" : { - "type" : "string" - }, - "EcsProperties" : { - "$ref" : "#/definitions/EcsProperties" - } - }, - "required" : [ "TargetNodes" ] - }, - "Metadata" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "Labels" : { - "type" : "object" + "AttemptDurationSeconds" : { + "type" : "integer" } } }, "EksContainerEnvironmentVariable" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "Value" : { "type" : "string" @@ -99,31 +53,36 @@ }, "required" : [ "Name" ] }, - "EfsVolumeConfiguration" : { - "type" : "object", + "NodeRangeProperty" : { "additionalProperties" : false, + "type" : "object", "properties" : { - "FileSystemId" : { - "type" : "string" + "Container" : { + "$ref" : "#/definitions/MultiNodeContainerProperties" }, - "TransitEncryption" : { + "TargetNodes" : { "type" : "string" }, - "RootDirectory" : { - "type" : "string" + "EcsProperties" : { + "$ref" : "#/definitions/MultiNodeEcsProperties" }, - "TransitEncryptionPort" : { - "type" : "integer" + "InstanceTypes" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "type" : "string" + } }, - "AuthorizationConfig" : { - "$ref" : "#/definitions/AuthorizationConfig" + "EksProperties" : { + "$ref" : "#/definitions/EksProperties" } }, - "required" : [ "FileSystemId" ] + "required" : [ "TargetNodes" ] }, "EksEmptyDir" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "Medium" : { "type" : "string" @@ -134,17 +93,24 @@ } }, "LogConfiguration" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "SecretOptions" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Secret" } }, "Options" : { + "patternProperties" : { + ".*" : { + "type" : "string" + } + }, + "additionalProperties" : false, "type" : "object" }, "LogDriver" : { @@ -153,18 +119,9 @@ }, "required" : [ "LogDriver" ] }, - "VolumesHost" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "SourcePath" : { - "type" : "string" - } - } - }, "RuntimePlatform" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "OperatingSystemFamily" : { "type" : "string" @@ -174,31 +131,51 @@ } } }, - "Volumes" : { - "type" : "object", + "MultiNodeEcsTaskProperties" : { "additionalProperties" : false, + "type" : "object", "properties" : { - "Host" : { - "$ref" : "#/definitions/VolumesHost" + "ExecutionRoleArn" : { + "type" : "string" }, - "EfsVolumeConfiguration" : { - "$ref" : "#/definitions/EfsVolumeConfiguration" + "TaskRoleArn" : { + "type" : "string" }, - "Name" : { + "IpcMode" : { + "type" : "string" + }, + "Volumes" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/Volume" + } + }, + "Containers" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/TaskContainerProperties" + } + }, + "PidMode" : { "type" : "string" } } }, "NodeProperties" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "MainNode" : { "type" : "integer" }, "NodeRangeProperties" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/NodeRangeProperty" } @@ -207,80 +184,32 @@ "type" : "integer" } }, - "required" : [ "MainNode", "NodeRangeProperties", "NumNodes" ] - }, - "PodProperties" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "InitContainers" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EksContainer" - } - }, - "Volumes" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EksVolume" - } - }, - "DnsPolicy" : { - "type" : "string" - }, - "Containers" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EksContainer" - } - }, - "Metadata" : { - "$ref" : "#/definitions/Metadata" - }, - "ServiceAccountName" : { - "type" : "string" - }, - "ImagePullSecrets" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/ImagePullSecret" - } - }, - "HostNetwork" : { - "type" : "boolean" - }, - "ShareProcessNamespace" : { - "type" : "boolean" - } - } + "required" : [ "NumNodes", "MainNode", "NodeRangeProperties" ] }, "Tmpfs" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { + "Size" : { + "type" : "integer" + }, "ContainerPath" : { "type" : "string" }, "MountOptions" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "type" : "string" } - }, - "Size" : { - "type" : "integer" } }, - "required" : [ "Size", "ContainerPath" ] + "required" : [ "ContainerPath", "Size" ] }, "TaskContainerDependency" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "Condition" : { "type" : "string" @@ -289,11 +218,11 @@ "type" : "string" } }, - "required" : [ "Condition", "ContainerName" ] + "required" : [ "ContainerName", "Condition" ] }, "ContainerProperties" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "RepositoryCredentials" : { "$ref" : "#/definitions/RepositoryCredentials" @@ -302,8 +231,9 @@ "type" : "string" }, "Secrets" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Secret" } @@ -318,7 +248,13 @@ "$ref" : "#/definitions/LinuxParameters" }, "FargatePlatformConfiguration" : { - "$ref" : "#/definitions/FargatePlatformConfiguration" + "additionalProperties" : false, + "type" : "object", + "properties" : { + "PlatformVersion" : { + "type" : "string" + } + } }, "JobRoleArn" : { "type" : "string" @@ -333,8 +269,9 @@ "type" : "string" }, "ResourceRequirements" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/ResourceRequirement" } @@ -343,10 +280,11 @@ "$ref" : "#/definitions/LogConfiguration" }, "MountPoints" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { - "$ref" : "#/definitions/MountPoints" + "$ref" : "#/definitions/MountPoint" } }, "ExecutionRoleArn" : { @@ -356,29 +294,33 @@ "$ref" : "#/definitions/RuntimePlatform" }, "Volumes" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { - "$ref" : "#/definitions/Volumes" + "$ref" : "#/definitions/Volume" } }, "Command" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", "items" : { "type" : "string" } }, "Environment" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", "items" : { "$ref" : "#/definitions/Environment" } }, "Ulimits" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Ulimit" } @@ -386,9 +328,6 @@ "NetworkConfiguration" : { "$ref" : "#/definitions/NetworkConfiguration" }, - "InstanceType" : { - "type" : "string" - }, "EphemeralStorage" : { "$ref" : "#/definitions/EphemeralStorage" } @@ -396,12 +335,13 @@ "required" : [ "Image" ] }, "EcsProperties" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "TaskProperties" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/EcsTaskProperties" } @@ -409,33 +349,33 @@ }, "required" : [ "TaskProperties" ] }, - "AuthorizationConfig" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Iam" : { - "type" : "string" - }, - "AccessPointId" : { - "type" : "string" - } - } - }, "EksContainerResourceRequirements" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { - "Requests" : { + "Limits" : { + "patternProperties" : { + ".*" : { + "type" : "string" + } + }, + "additionalProperties" : false, "type" : "object" }, - "Limits" : { + "Requests" : { + "patternProperties" : { + ".*" : { + "type" : "string" + } + }, + "additionalProperties" : false, "type" : "object" } } }, "NetworkConfiguration" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "AssignPublicIp" : { "type" : "string" @@ -443,8 +383,8 @@ } }, "EcsTaskProperties" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "PlatformVersion" : { "type" : "string" @@ -462,15 +402,17 @@ "type" : "string" }, "Volumes" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { - "$ref" : "#/definitions/Volumes" + "$ref" : "#/definitions/Volume" } }, "Containers" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/TaskContainerProperties" } @@ -487,8 +429,8 @@ } }, "EksContainerSecurityContext" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "RunAsUser" : { "type" : "integer" @@ -511,8 +453,8 @@ } }, "TaskContainerProperties" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "RepositoryCredentials" : { "$ref" : "#/definitions/RepositoryCredentials" @@ -521,8 +463,9 @@ "type" : "string" }, "Secrets" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Secret" } @@ -546,8 +489,9 @@ "type" : "boolean" }, "ResourceRequirements" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/ResourceRequirement" } @@ -556,36 +500,41 @@ "type" : "string" }, "MountPoints" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { - "$ref" : "#/definitions/MountPoints" + "$ref" : "#/definitions/MountPoint" } }, "DependsOn" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/TaskContainerDependency" } }, "Command" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", "items" : { "type" : "string" } }, "Environment" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", "items" : { "$ref" : "#/definitions/Environment" } }, "Ulimits" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Ulimit" } @@ -593,9 +542,24 @@ }, "required" : [ "Image" ] }, - "EksSecret" : { + "EksMetadata" : { + "additionalProperties" : false, "type" : "object", + "properties" : { + "Labels" : { + "patternProperties" : { + ".*" : { + "type" : "string" + } + }, + "additionalProperties" : false, + "type" : "object" + } + } + }, + "EksSecret" : { "additionalProperties" : false, + "type" : "object", "properties" : { "SecretName" : { "type" : "string" @@ -607,8 +571,8 @@ "required" : [ "SecretName" ] }, "RepositoryCredentials" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "CredentialsParameter" : { "type" : "string" @@ -616,73 +580,102 @@ }, "required" : [ "CredentialsParameter" ] }, - "ImagePullSecret" : { + "EFSVolumeConfiguration" : { + "additionalProperties" : false, "type" : "object", + "properties" : { + "TransitEncryption" : { + "type" : "string" + }, + "AuthorizationConfig" : { + "$ref" : "#/definitions/EFSAuthorizationConfig" + }, + "FileSystemId" : { + "type" : "string" + }, + "RootDirectory" : { + "type" : "string" + }, + "TransitEncryptionPort" : { + "type" : "integer" + } + }, + "required" : [ "FileSystemId" ] + }, + "ImagePullSecret" : { "additionalProperties" : false, + "type" : "object", "properties" : { "Name" : { "type" : "string" } - }, - "required" : [ "Name" ] + } }, "EvaluateOnExit" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "Action" : { "type" : "string" }, - "OnStatusReason" : { - "type" : "string" - }, "OnExitCode" : { "type" : "string" }, "OnReason" : { "type" : "string" + }, + "OnStatusReason" : { + "type" : "string" } }, "required" : [ "Action" ] }, - "Timeout" : { - "type" : "object", + "MultiNodeEcsProperties" : { "additionalProperties" : false, + "type" : "object", "properties" : { - "AttemptDurationSeconds" : { - "type" : "integer" + "TaskProperties" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/MultiNodeEcsTaskProperties" + } } - } + }, + "required" : [ "TaskProperties" ] }, "Device" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { + "HostPath" : { + "type" : "string" + }, "Permissions" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "type" : "string" } }, - "HostPath" : { - "type" : "string" - }, "ContainerPath" : { "type" : "string" } } }, "LinuxParameters" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "Swappiness" : { "type" : "integer" }, "Tmpfs" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Tmpfs" } @@ -691,8 +684,9 @@ "type" : "integer" }, "Devices" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Device" } @@ -705,18 +699,9 @@ } } }, - "FargatePlatformConfiguration" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "PlatformVersion" : { - "type" : "string" - } - } - }, "Ulimit" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "SoftLimit" : { "type" : "integer" @@ -728,11 +713,32 @@ "type" : "string" } }, - "required" : [ "SoftLimit", "HardLimit", "Name" ] + "required" : [ "HardLimit", "Name", "SoftLimit" ] }, - "EksVolume" : { + "Host" : { + "additionalProperties" : false, "type" : "object", + "properties" : { + "SourcePath" : { + "type" : "string" + } + } + }, + "EFSAuthorizationConfig" : { "additionalProperties" : false, + "type" : "object", + "properties" : { + "Iam" : { + "type" : "string" + }, + "AccessPointId" : { + "type" : "string" + } + } + }, + "EksVolume" : { + "additionalProperties" : false, + "type" : "object", "properties" : { "Secret" : { "$ref" : "#/definitions/EksSecret" @@ -750,8 +756,8 @@ "required" : [ "Name" ] }, "EksContainerVolumeMount" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "MountPath" : { "type" : "string" @@ -765,30 +771,122 @@ } }, "EksProperties" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "PodProperties" : { - "$ref" : "#/definitions/PodProperties" + "$ref" : "#/definitions/EksPodProperties" } } }, - "Secret" : { - "type" : "object", + "MultiNodeContainerProperties" : { "additionalProperties" : false, + "type" : "object", "properties" : { - "ValueFrom" : { + "RepositoryCredentials" : { + "$ref" : "#/definitions/RepositoryCredentials" + }, + "User" : { "type" : "string" }, - "Name" : { + "Secrets" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/Secret" + } + }, + "Memory" : { + "type" : "integer" + }, + "Privileged" : { + "type" : "boolean" + }, + "LinuxParameters" : { + "$ref" : "#/definitions/LinuxParameters" + }, + "JobRoleArn" : { "type" : "string" + }, + "ReadonlyRootFilesystem" : { + "type" : "boolean" + }, + "Vcpus" : { + "type" : "integer" + }, + "Image" : { + "type" : "string" + }, + "ResourceRequirements" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/ResourceRequirement" + } + }, + "LogConfiguration" : { + "$ref" : "#/definitions/LogConfiguration" + }, + "MountPoints" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/MountPoint" + } + }, + "ExecutionRoleArn" : { + "type" : "string" + }, + "RuntimePlatform" : { + "$ref" : "#/definitions/RuntimePlatform" + }, + "Volumes" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/Volume" + } + }, + "Command" : { + "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", + "items" : { + "type" : "string" + } + }, + "Environment" : { + "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", + "items" : { + "$ref" : "#/definitions/Environment" + } + }, + "Ulimits" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/Ulimit" + } + }, + "InstanceType" : { + "type" : "string" + }, + "EphemeralStorage" : { + "$ref" : "#/definitions/EphemeralStorage" } }, - "required" : [ "ValueFrom", "Name" ] + "required" : [ "Image" ] }, - "MountPoints" : { - "type" : "object", + "MountPoint" : { "additionalProperties" : false, + "type" : "object", "properties" : { "ReadOnly" : { "type" : "boolean" @@ -801,9 +899,37 @@ } } }, - "EksHostPath" : { + "Secret" : { + "additionalProperties" : false, + "type" : "object", + "properties" : { + "ValueFrom" : { + "type" : "string" + }, + "Name" : { + "type" : "string" + } + }, + "required" : [ "Name", "ValueFrom" ] + }, + "Volume" : { + "additionalProperties" : false, "type" : "object", + "properties" : { + "Host" : { + "$ref" : "#/definitions/Host" + }, + "EfsVolumeConfiguration" : { + "$ref" : "#/definitions/EFSVolumeConfiguration" + }, + "Name" : { + "type" : "string" + } + } + }, + "EksHostPath" : { "additionalProperties" : false, + "type" : "object", "properties" : { "Path" : { "type" : "string" @@ -811,8 +937,8 @@ } }, "Environment" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "Value" : { "type" : "string" @@ -823,20 +949,20 @@ } }, "ResourceRequirement" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { - "Value" : { + "Type" : { "type" : "string" }, - "Type" : { + "Value" : { "type" : "string" } } }, "EphemeralStorage" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "SizeInGiB" : { "type" : "integer" @@ -844,36 +970,22 @@ }, "required" : [ "SizeInGiB" ] }, - "RetryStrategy" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "EvaluateOnExit" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EvaluateOnExit" - } - }, - "Attempts" : { - "type" : "integer" - } - } - }, "EksContainer" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { "Args" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", "items" : { "type" : "string" } }, "VolumeMounts" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/EksContainerVolumeMount" } @@ -882,8 +994,9 @@ "type" : "string" }, "Command" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", "items" : { "type" : "string" } @@ -898,8 +1011,9 @@ "type" : "string" }, "Env" : { - "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/EksContainerEnvironmentVariable" } @@ -909,10 +1023,137 @@ } }, "required" : [ "Image" ] + }, + "RetryStrategy" : { + "additionalProperties" : false, + "type" : "object", + "properties" : { + "EvaluateOnExit" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/EvaluateOnExit" + } + }, + "Attempts" : { + "type" : "integer" + } + } + }, + "EksPodProperties" : { + "additionalProperties" : false, + "type" : "object", + "properties" : { + "InitContainers" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/EksContainer" + } + }, + "Volumes" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/EksVolume" + } + }, + "DnsPolicy" : { + "type" : "string" + }, + "Containers" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/EksContainer" + } + }, + "Metadata" : { + "$ref" : "#/definitions/EksMetadata" + }, + "ServiceAccountName" : { + "type" : "string" + }, + "ImagePullSecrets" : { + "uniqueItems" : false, + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/ImagePullSecret" + } + }, + "HostNetwork" : { + "type" : "boolean" + }, + "ShareProcessNamespace" : { + "type" : "boolean" + } + } } }, - "required" : [ "Type" ], - "createOnlyProperties" : [ "/properties/JobDefinitionName" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id" ] + "properties" : { + "Parameters" : { + "patternProperties" : { + ".*" : { + "type" : "string" + } + }, + "additionalProperties" : false, + "type" : "object" + }, + "Timeout" : { + "$ref" : "#/definitions/JobTimeout" + }, + "JobDefinitionName" : { + "type" : "string", + "maxLength" : 128 + }, + "PropagateTags" : { + "type" : "boolean" + }, + "PlatformCapabilities" : { + "uniqueItems" : false, + "insertionOrder" : true, + "type" : "array", + "items" : { + "type" : "string" + } + }, + "EksProperties" : { + "$ref" : "#/definitions/EksProperties" + }, + "Type" : { + "type" : "string" + }, + "NodeProperties" : { + "$ref" : "#/definitions/NodeProperties" + }, + "SchedulingPriority" : { + "type" : "integer" + }, + "ContainerProperties" : { + "$ref" : "#/definitions/ContainerProperties" + }, + "EcsProperties" : { + "$ref" : "#/definitions/EcsProperties" + }, + "RetryStrategy" : { + "$ref" : "#/definitions/RetryStrategy" + }, + "Tags" : { + "patternProperties" : { + ".*" : { + "type" : "string" + } + }, + "description" : "A key-value pair to associate with a resource.", + "additionalProperties" : false, + "type" : "object" + } + }, + "required" : [ "Type" ] } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-cassandra-keyspace.json b/aws-cloudformation-schema/aws-cassandra-keyspace.json index 3a6e75b004..b8741d2018 100644 --- a/aws-cloudformation-schema/aws-cassandra-keyspace.json +++ b/aws-cloudformation-schema/aws-cassandra-keyspace.json @@ -18,6 +18,10 @@ }, "ReplicationSpecification" : { "$ref" : "#/definitions/ReplicationSpecification" + }, + "ClientSideTimestampsEnabled" : { + "type" : "boolean", + "description" : "Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again." } }, "definitions" : { @@ -76,7 +80,7 @@ }, "additionalProperties" : false, "required" : [ ], - "createOnlyProperties" : [ "/properties/ReplicationSpecification", "/properties/KeyspaceName" ], + "createOnlyProperties" : [ "/properties/KeyspaceName" ], "primaryIdentifier" : [ "/properties/KeyspaceName" ], "tagging" : { "taggable" : true, @@ -94,7 +98,7 @@ "permissions" : [ "cassandra:Select", "cassandra:SelectMultiRegionResource" ] }, "update" : { - "permissions" : [ "cassandra:Alter", "cassandra:AlterMultiRegionResource", "cassandra:Select", "cassandra:SelectMultiRegionResource", "cassandra:TagResource", "cassandra:TagMultiRegionResource", "cassandra:UntagResource", "cassandra:UntagMultiRegionResource" ] + "permissions" : [ "cassandra:Alter", "cassandra:AlterMultiRegionResource", "cassandra:Modify", "cassandra:ModifyMultiRegionResource", "cassandra:Select", "cassandra:SelectMultiRegionResource", "cassandra:TagResource", "cassandra:TagMultiRegionResource", "cassandra:UntagResource", "cassandra:UntagMultiRegionResource", "application-autoscaling:RegisterScalableTarget", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:DescribeScalableTargets", "application-autoscaling:DescribeScalingPolicies", "application-autoscaling:PutScalingPolicy", "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudwatch:PutMetricAlarm", "iam:CreateServiceLinkedRole" ] }, "delete" : { "permissions" : [ "cassandra:Drop", "cassandra:DropMultiRegionResource", "cassandra:Select", "cassandra:SelectMultiRegionResource" ] diff --git a/aws-cloudformation-schema/aws-cassandra-type.json b/aws-cloudformation-schema/aws-cassandra-type.json new file mode 100644 index 0000000000..0a2cbbc951 --- /dev/null +++ b/aws-cloudformation-schema/aws-cassandra-type.json @@ -0,0 +1,90 @@ +{ + "typeName" : "AWS::Cassandra::Type", + "description" : "Resource schema for AWS::Cassandra::Type", + "definitions" : { + "Field" : { + "type" : "object", + "properties" : { + "FieldName" : { + "type" : "string" + }, + "FieldType" : { + "type" : "string" + } + }, + "required" : [ "FieldName", "FieldType" ], + "additionalProperties" : false + } + }, + "properties" : { + "KeyspaceName" : { + "description" : "Name of the Keyspace which contains the User-Defined Type.", + "type" : "string" + }, + "TypeName" : { + "description" : "Name of the User-Defined Type.", + "type" : "string" + }, + "Fields" : { + "description" : "Field definitions of the User-Defined Type", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Field" + } + }, + "DirectReferringTables" : { + "description" : "List of Tables that directly reference the User-Defined Type in their columns.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "type" : "string" + } + }, + "DirectParentTypes" : { + "description" : "List of parent User-Defined Types that directly reference the User-Defined Type in their fields.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "type" : "string" + } + }, + "MaxNestingDepth" : { + "description" : "Maximum nesting depth of the User-Defined Type across the field types.", + "type" : "integer" + }, + "LastModifiedTimestamp" : { + "description" : "Timestamp of the last time the User-Defined Type's meta data was modified.", + "type" : "number" + }, + "KeyspaceArn" : { + "description" : "ARN of the Keyspace which contains the User-Defined Type.", + "type" : "string" + } + }, + "additionalProperties" : false, + "required" : [ "KeyspaceName", "TypeName", "Fields" ], + "createOnlyProperties" : [ "/properties/KeyspaceName", "/properties/TypeName", "/properties/Fields" ], + "readOnlyProperties" : [ "/properties/DirectReferringTables", "/properties/DirectParentTypes", "/properties/MaxNestingDepth", "/properties/LastModifiedTimestamp", "/properties/KeyspaceArn" ], + "primaryIdentifier" : [ "/properties/KeyspaceName", "/properties/TypeName" ], + "tagging" : { + "taggable" : false + }, + "handlers" : { + "create" : { + "permissions" : [ "cassandra:Create", "cassandra:Select" ] + }, + "read" : { + "permissions" : [ "cassandra:Select" ] + }, + "delete" : { + "permissions" : [ "cassandra:Drop", "cassandra:Select" ] + }, + "list" : { + "permissions" : [ "cassandra:Select" ] + } + } +} \ 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 9188149fd4..8bb6f5651e 100644 --- a/aws-cloudformation-schema/aws-cleanrooms-configuredtable.json +++ b/aws-cloudformation-schema/aws-cleanrooms-configuredtable.json @@ -311,6 +311,99 @@ "required" : [ "DatabaseName", "TableName" ], "additionalProperties" : false }, + "SnowflakeTableReference" : { + "type" : "object", + "properties" : { + "SecretArn" : { + "type" : "string", + "maxLength" : 256 + }, + "AccountIdentifier" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 3 + }, + "DatabaseName" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 1 + }, + "TableName" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 1 + }, + "SchemaName" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 1 + }, + "TableSchema" : { + "$ref" : "#/definitions/SnowflakeTableSchema" + } + }, + "required" : [ "AccountIdentifier", "DatabaseName", "SchemaName", "SecretArn", "TableName", "TableSchema" ], + "additionalProperties" : false + }, + "SnowflakeTableSchema" : { + "oneOf" : [ { + "type" : "object", + "title" : "V1", + "properties" : { + "V1" : { + "type" : "array", + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/SnowflakeTableSchemaV1" + }, + "maxItems" : 250, + "minItems" : 1 + } + }, + "required" : [ "V1" ], + "additionalProperties" : false + } ] + }, + "SnowflakeTableSchemaV1" : { + "type" : "object", + "properties" : { + "ColumnName" : { + "type" : "string", + "maxLength" : 128 + }, + "ColumnType" : { + "type" : "string", + "maxLength" : 255 + } + }, + "required" : [ "ColumnName", "ColumnType" ], + "additionalProperties" : false + }, + "AthenaTableReference" : { + "type" : "object", + "properties" : { + "WorkGroup" : { + "type" : "string", + "maxLength" : 128, + "minLength" : 1 + }, + "OutputLocation" : { + "type" : "string", + "maxLength" : 1024, + "minLength" : 8 + }, + "DatabaseName" : { + "type" : "string", + "maxLength" : 128 + }, + "TableName" : { + "type" : "string", + "maxLength" : 128 + } + }, + "required" : [ "DatabaseName", "TableName", "WorkGroup" ], + "additionalProperties" : false + }, "AnalysisRule" : { "type" : "object", "properties" : { @@ -325,15 +418,37 @@ "additionalProperties" : false }, "TableReference" : { - "type" : "object", - "title" : "Glue", - "properties" : { - "Glue" : { - "$ref" : "#/definitions/GlueTableReference" - } - }, - "required" : [ "Glue" ], - "additionalProperties" : false + "oneOf" : [ { + "type" : "object", + "title" : "Glue", + "properties" : { + "Glue" : { + "$ref" : "#/definitions/GlueTableReference" + } + }, + "required" : [ "Glue" ], + "additionalProperties" : false + }, { + "type" : "object", + "title" : "Snowflake", + "properties" : { + "Snowflake" : { + "$ref" : "#/definitions/SnowflakeTableReference" + } + }, + "required" : [ "Snowflake" ], + "additionalProperties" : false + }, { + "type" : "object", + "title" : "Athena", + "properties" : { + "Athena" : { + "$ref" : "#/definitions/AthenaTableReference" + } + }, + "required" : [ "Athena" ], + "additionalProperties" : false + } ] }, "Tag" : { "type" : "object", @@ -425,7 +540,7 @@ }, "handlers" : { "create" : { - "permissions" : [ "cleanrooms:CreateConfiguredTable", "cleanrooms:DeleteConfiguredTable", "cleanrooms:DeleteConfiguredTableAnalysisRule", "cleanrooms:CreateConfiguredTableAnalysisRule", "cleanrooms:GetConfiguredTable", "cleanrooms:GetConfiguredTableAnalysisRule", "glue:GetDatabase", "glue:GetDatabases", "glue:GetTable", "glue:GetTables", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition", "glue:GetSchemaVersion", "cleanrooms:ListTagsForResource", "cleanrooms:TagResource", "cleanrooms:ListConfiguredTables" ] + "permissions" : [ "cleanrooms:CreateConfiguredTable", "cleanrooms:DeleteConfiguredTable", "cleanrooms:DeleteConfiguredTableAnalysisRule", "cleanrooms:CreateConfiguredTableAnalysisRule", "cleanrooms:GetConfiguredTable", "cleanrooms:GetConfiguredTableAnalysisRule", "glue:GetDatabase", "glue:GetDatabases", "glue:GetTable", "glue:GetTables", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition", "glue:GetSchemaVersion", "cleanrooms:ListTagsForResource", "cleanrooms:TagResource", "cleanrooms:ListConfiguredTables", "athena:GetTableMetadata" ] }, "read" : { "permissions" : [ "cleanrooms:GetConfiguredTable", "cleanrooms:GetConfiguredTableAnalysisRule", "cleanrooms:ListTagsForResource" ] diff --git a/aws-cloudformation-schema/aws-cleanrooms-configuredtableassociation.json b/aws-cloudformation-schema/aws-cleanrooms-configuredtableassociation.json index 08763da847..522738ab7f 100644 --- a/aws-cloudformation-schema/aws-cleanrooms-configuredtableassociation.json +++ b/aws-cloudformation-schema/aws-cleanrooms-configuredtableassociation.json @@ -147,7 +147,7 @@ "properties" : { "Arn" : { "type" : "string", - "maxLength" : 100 + "maxLength" : 256 }, "Tags" : { "description" : "An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.", diff --git a/aws-cloudformation-schema/aws-cloudfront-distribution.json b/aws-cloudformation-schema/aws-cloudfront-distribution.json index a07d572b12..95f0d1987b 100644 --- a/aws-cloudformation-schema/aws-cloudfront-distribution.json +++ b/aws-cloudformation-schema/aws-cloudfront-distribution.json @@ -53,6 +53,10 @@ "uniqueItems" : false, "description" : "A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior." }, + "GrpcConfig" : { + "$ref" : "#/definitions/GrpcConfig", + "description" : "" + }, "LambdaFunctionAssociations" : { "items" : { "$ref" : "#/definitions/LambdaFunctionAssociation" @@ -260,6 +264,10 @@ "uniqueItems" : false, "description" : "A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior." }, + "GrpcConfig" : { + "$ref" : "#/definitions/GrpcConfig", + "description" : "" + }, "LambdaFunctionAssociations" : { "items" : { "$ref" : "#/definitions/LambdaFunctionAssociation" @@ -523,6 +531,17 @@ "type" : "object", "description" : "A complex type that controls the countries in which your content is distributed. CF determines the location of your users using ``MaxMind`` GeoIP databases. To disable geo restriction, remove the [Restrictions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions) property from your stack template." }, + "GrpcConfig" : { + "additionalProperties" : false, + "properties" : { + "Enabled" : { + "type" : "boolean" + } + }, + "required" : [ "Enabled" ], + "type" : "object", + "description" : "" + }, "LambdaFunctionAssociation" : { "additionalProperties" : false, "properties" : { @@ -611,7 +630,6 @@ "description" : "An optional string that you want CloudFront to prefix to the access log ``filenames`` for this distribution, for example, ``myprefix/``. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty ``Prefix`` element in the ``Logging`` element." } }, - "required" : [ "Bucket" ], "type" : "object", "description" : "A complex type that controls whether access logs are written for the distribution." }, @@ -698,6 +716,10 @@ "Members" : { "$ref" : "#/definitions/OriginGroupMembers", "description" : "A complex type that contains information about the origins in an origin group." + }, + "SelectionCriteria" : { + "$ref" : "#/definitions/OriginGroupSelectionCriteria", + "description" : "" } }, "required" : [ "Id", "FailoverCriteria", "Members" ], @@ -748,6 +770,10 @@ "type" : "object", "description" : "A complex data type for the origins included in an origin group." }, + "OriginGroupSelectionCriteria" : { + "enum" : [ "default", "media-quality-based" ], + "type" : "string" + }, "OriginGroups" : { "additionalProperties" : false, "properties" : { diff --git a/aws-cloudformation-schema/aws-codedeploy-application.json b/aws-cloudformation-schema/aws-codedeploy-application.json index 1ab6ae6348..fb9deb1369 100644 --- a/aws-cloudformation-schema/aws-codedeploy-application.json +++ b/aws-cloudformation-schema/aws-codedeploy-application.json @@ -44,7 +44,8 @@ "tagOnCreate" : true, "tagUpdatable" : true, "cloudFormationSystemTags" : false, - "tagProperty" : "/properties/Tags" + "tagProperty" : "/properties/Tags", + "permissions" : [ "codedeploy:TagResource", "codedeploy:UntagResource" ] }, "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-comprehend-documentclassifier.json b/aws-cloudformation-schema/aws-comprehend-documentclassifier.json index 249e034ff8..06a7418001 100644 --- a/aws-cloudformation-schema/aws-comprehend-documentclassifier.json +++ b/aws-cloudformation-schema/aws-comprehend-documentclassifier.json @@ -74,7 +74,8 @@ "tagOnCreate" : true, "tagUpdatable" : true, "cloudFormationSystemTags" : true, - "tagProperty" : "/properties/Tags" + "tagProperty" : "/properties/Tags", + "permissions" : [ "comprehend:TagResource", "comprehend:UntagResource" ] }, "definitions" : { "Tag" : { diff --git a/aws-cloudformation-schema/aws-config-storedquery.json b/aws-cloudformation-schema/aws-config-storedquery.json index ca79019b23..601263a63b 100644 --- a/aws-cloudformation-schema/aws-config-storedquery.json +++ b/aws-cloudformation-schema/aws-config-storedquery.json @@ -72,7 +72,8 @@ "tagOnCreate" : true, "tagUpdatable" : true, "cloudFormationSystemTags" : true, - "tagProperty" : "/properties/Tags" + "tagProperty" : "/properties/Tags", + "permissions" : [ "config:TagResource", "config:UntagResource", "config:ListTagsForResource" ] }, "createOnlyProperties" : [ "/properties/QueryName" ], "primaryIdentifier" : [ "/properties/QueryName" ], diff --git a/aws-cloudformation-schema/aws-connect-queue.json b/aws-cloudformation-schema/aws-connect-queue.json index 1c0f7e5cfa..63e34875a4 100644 --- a/aws-cloudformation-schema/aws-connect-queue.json +++ b/aws-cloudformation-schema/aws-connect-queue.json @@ -1,178 +1,197 @@ { - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", - "tagging" : { - "permissions" : [ "connect:TagResource", "connect:UntagResource" ], - "taggable" : true, - "tagOnCreate" : true, - "tagUpdatable" : true, - "tagProperty" : "/properties/Tags", - "cloudFormationSystemTags" : true - }, - "handlers" : { - "read" : { - "permissions" : [ "connect:DescribeQueue", "connect:ListQueueQuickConnects" ] - }, - "create" : { - "permissions" : [ "connect:CreateQueue", "connect:TagResource" ] - }, - "update" : { - "permissions" : [ "connect:UpdateQueueHoursOfOperation", "connect:UpdateQueueMaxContacts", "connect:UpdateQueueName", "connect:UpdateQueueOutboundCallerConfig", "connect:UpdateQueueOutboundEmailConfig", "connect:UpdateQueueStatus", "connect:AssociateQueueQuickConnects", "connect:DisassociateQueueQuickConnects", "connect:TagResource", "connect:UntagResource" ] - }, - "list" : { - "permissions" : [ "connect:ListQueues", "connect:ListQueueQuickConnects" ], - "handlerSchema" : { - "properties" : { - "InstanceArn" : { - "$ref" : "resource-schema.json#/properties/InstanceArn" - } - }, - "required" : [ "InstanceArn" ] - } - }, - "delete" : { - "permissions" : [ "connect:DeleteQueue", "connect:UntagResource" ] - } - }, "typeName" : "AWS::Connect::Queue", - "readOnlyProperties" : [ "/properties/QueueArn", "/properties/Type" ], "description" : "Resource Type definition for AWS::Connect::Queue", - "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/QueueArn" ], + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", "definitions" : { + "OutboundCallerIdName" : { + "description" : "The caller ID name.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, "OutboundCallerIdNumberArn" : { - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:phone-number/[-a-zA-Z0-9]*$", "description" : "The caller ID number.", - "type" : "string" + "type" : "string", + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:phone-number/[-a-zA-Z0-9]*$" }, "OutboundFlowArn" : { - "minLength" : 1, - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$", "description" : "The outbound whisper flow to be used during an outbound call.", "type" : "string", + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$", + "minLength" : 1, "maxLength" : 500 }, - "QuickConnectArn" : { - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/transfer-destination/[-a-zA-Z0-9]*$", - "description" : "The Amazon Resource Name (ARN) for the quick connect.", - "type" : "string" + "OutboundEmailAddressId" : { + "description" : "The email address connect resource ID.", + "type" : "string", + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/email-address/[-a-zA-Z0-9]*$" + }, + "Tag" : { + "description" : "A key-value pair to associate with a resource.", + "type" : "object", + "properties" : { + "Key" : { + "$ref" : "#/definitions/Key" + }, + "Value" : { + "$ref" : "#/definitions/Value" + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + }, + "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, + "pattern" : "^(?!aws:)[a-zA-Z+-=._:/]+$" }, "Value" : { - "minLength" : 0, - "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" : "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 }, "OutboundCallerConfig" : { "description" : "The outbound caller ID name, number, and outbound whisper flow.", - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { + "OutboundCallerIdName" : { + "$ref" : "#/definitions/OutboundCallerIdName" + }, "OutboundCallerIdNumberArn" : { "$ref" : "#/definitions/OutboundCallerIdNumberArn" }, "OutboundFlowArn" : { "$ref" : "#/definitions/OutboundFlowArn" - }, - "OutboundCallerIdName" : { - "$ref" : "#/definitions/OutboundCallerIdName" } } }, - "OutboundCallerIdName" : { - "minLength" : 1, - "description" : "The caller ID name.", - "type" : "string", - "maxLength" : 255 - }, - "Tag" : { - "description" : "A key-value pair to associate with a resource.", - "additionalProperties" : false, + "OutboundEmailConfig" : { + "description" : "The outbound email address ID.", "type" : "object", + "additionalProperties" : false, "properties" : { - "Value" : { - "$ref" : "#/definitions/Value" - }, - "Key" : { - "$ref" : "#/definitions/Key" + "OutboundEmailAddressId" : { + "$ref" : "#/definitions/OutboundEmailAddressId" } - }, - "required" : [ "Key", "Value" ] + } }, - "Key" : { - "minLength" : 1, - "pattern" : "^(?!aws:)[a-zA-Z+-=._:/]+$", - "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 -.", + "QuickConnectArn" : { + "description" : "The Amazon Resource Name (ARN) for the quick connect.", "type" : "string", - "maxLength" : 128 + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/transfer-destination/[-a-zA-Z0-9]*$" } }, - "required" : [ "InstanceArn", "HoursOfOperationArn", "Name" ], "properties" : { - "Status" : { - "description" : "The status of the queue.", + "InstanceArn" : { + "description" : "The identifier of the Amazon Connect instance.", "type" : "string", - "enum" : [ "ENABLED", "DISABLED" ] + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$" + }, + "Description" : { + "description" : "The description of the queue.", + "type" : "string", + "minLength" : 1, + "maxLength" : 250 }, "HoursOfOperationArn" : { - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/operating-hours/[-a-zA-Z0-9]*$", "description" : "The identifier for the hours of operation.", - "type" : "string" - }, - "Type" : { - "description" : "The type of queue.", "type" : "string", - "enum" : [ "STANDARD", "AGENT" ] + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/operating-hours/[-a-zA-Z0-9]*$" }, - "Description" : { + "MaxContacts" : { + "description" : "The maximum number of contacts that can be in the queue before it is considered full.", + "type" : "integer", + "minimum" : 0 + }, + "Name" : { + "description" : "The name of the queue.", + "type" : "string", "minLength" : 1, - "description" : "The description of the queue.", + "maxLength" : 127 + }, + "OutboundCallerConfig" : { + "description" : "The outbound caller ID name, number, and outbound whisper flow.", + "$ref" : "#/definitions/OutboundCallerConfig" + }, + "OutboundEmailConfig" : { + "description" : "The outbound email address ID.", + "$ref" : "#/definitions/OutboundEmailConfig" + }, + "QueueArn" : { + "description" : "The Amazon Resource Name (ARN) for the queue.", "type" : "string", - "maxLength" : 250 + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/queue/[-a-zA-Z0-9]*$" }, - "InstanceArn" : { - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$", - "description" : "The identifier of the Amazon Connect instance.", - "type" : "string" + "Status" : { + "description" : "The status of the queue.", + "type" : "string", + "enum" : [ "ENABLED", "DISABLED" ] }, "QuickConnectArns" : { + "description" : "The quick connects available to agents who are working the queue.", + "type" : "array", "minItems" : 1, "maxItems" : 50, - "description" : "The quick connects available to agents who are working the queue.", "insertionOrder" : false, - "type" : "array", "items" : { "$ref" : "#/definitions/QuickConnectArn" } }, - "OutboundCallerConfig" : { - "description" : "The outbound caller ID name, number, and outbound whisper flow.", - "$ref" : "#/definitions/OutboundCallerConfig" - }, - "QueueArn" : { - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/queue/[-a-zA-Z0-9]*$", - "description" : "The Amazon Resource Name (ARN) for the queue.", - "type" : "string" - }, - "MaxContacts" : { - "description" : "The maximum number of contacts that can be in the queue before it is considered full.", - "type" : "integer", - "minimum" : 0 - }, "Tags" : { + "type" : "array", "maxItems" : 50, "uniqueItems" : true, - "description" : "An array of key-value pairs to apply to this resource.", "insertionOrder" : false, - "type" : "array", + "description" : "An array of key-value pairs to apply to this resource.", "items" : { "$ref" : "#/definitions/Tag" } }, - "Name" : { - "minLength" : 1, - "description" : "The name of the queue.", + "Type" : { "type" : "string", - "maxLength" : 127 + "description" : "The type of queue.", + "enum" : [ "STANDARD", "AGENT" ] + } + }, + "handlers" : { + "create" : { + "permissions" : [ "connect:CreateQueue", "connect:TagResource" ] + }, + "read" : { + "permissions" : [ "connect:DescribeQueue", "connect:ListQueueQuickConnects" ] + }, + "delete" : { + "permissions" : [ "connect:DeleteQueue", "connect:UntagResource" ] + }, + "update" : { + "permissions" : [ "connect:UpdateQueueHoursOfOperation", "connect:UpdateQueueMaxContacts", "connect:UpdateQueueName", "connect:UpdateQueueOutboundCallerConfig", "connect:UpdateQueueOutboundEmailConfig", "connect:UpdateQueueStatus", "connect:AssociateQueueQuickConnects", "connect:DisassociateQueueQuickConnects", "connect:TagResource", "connect:UntagResource" ] + }, + "list" : { + "handlerSchema" : { + "properties" : { + "InstanceArn" : { + "$ref" : "resource-schema.json#/properties/InstanceArn" + } + }, + "required" : [ "InstanceArn" ] + }, + "permissions" : [ "connect:ListQueues", "connect:ListQueueQuickConnects" ] } - } + }, + "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/QueueArn" ], + "readOnlyProperties" : [ "/properties/QueueArn", "/properties/Type" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "connect:TagResource", "connect:UntagResource" ] + }, + "required" : [ "InstanceArn", "HoursOfOperationArn", "Name" ] } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-connect-rule.json b/aws-cloudformation-schema/aws-connect-rule.json index 0b22017770..074b2e70a4 100644 --- a/aws-cloudformation-schema/aws-connect-rule.json +++ b/aws-cloudformation-schema/aws-connect-rule.json @@ -1,39 +1,44 @@ { "typeName" : "AWS::Connect::Rule", - "description" : "Resource Type definition for AWS:Connect::Rule", + "description" : "Creates a rule for the specified CON instance.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", "definitions" : { "FieldValue" : { - "description" : "The value of the field.", + "description" : "Object for case field values.", "type" : "object", "properties" : { "StringValue" : { - "type" : "string" + "type" : "string", + "description" : "" }, "BooleanValue" : { - "type" : "boolean" + "type" : "boolean", + "description" : "" }, "DoubleValue" : { - "type" : "number" + "type" : "number", + "description" : "" }, "EmptyValue" : { - "type" : "object" + "type" : "object", + "description" : "" } }, "additionalProperties" : false }, "Field" : { - "description" : "The field of the case.", + "description" : "", "type" : "object", "properties" : { "Id" : { - "description" : "The Id of the field", + "description" : "", "type" : "string", "minLength" : 1, "maxLength" : 500 }, "Value" : { - "$ref" : "#/definitions/FieldValue" + "$ref" : "#/definitions/FieldValue", + "description" : "" } }, "required" : [ "Id", "Value" ], @@ -60,7 +65,7 @@ "type" : "object", "properties" : { "UserTags" : { - "description" : "The collection of recipients who are identified by user tags", + "description" : "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }. CON users with the specified tags will be notified.", "patternProperties" : { "^(?=.{1,128}$).+$" : { "type" : "string" @@ -69,7 +74,7 @@ "additionalProperties" : false }, "UserArns" : { - "description" : "The list of recipients by user arns.", + "description" : "The Amazon Resource Name (ARN) of the user account.", "type" : "array", "minItems" : 1, "maxItems" : 5, @@ -83,44 +88,46 @@ "additionalProperties" : false }, "Reference" : { - "description" : "A contact reference.", + "description" : "Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.)", "type" : "object", "properties" : { "Value" : { "type" : "string", - "pattern" : "^(/|https:)" + "pattern" : "^(/|https:)", + "description" : "A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP)." }, "Type" : { "type" : "string", - "enum" : [ "URL", "ATTACHMENT", "NUMBER", "STRING", "DATE", "EMAIL" ] + "enum" : [ "URL", "ATTACHMENT", "NUMBER", "STRING", "DATE", "EMAIL" ], + "description" : "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``" } }, "required" : [ "Value", "Type" ], "additionalProperties" : false }, "TaskAction" : { - "description" : "The definition of task action.", + "description" : "Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``", "type" : "object", "properties" : { "Name" : { - "description" : "The name which appears in the agent's Contact Control Panel (CCP).", + "description" : "The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.", "type" : "string", "minLength" : 1, "maxLength" : 512 }, "Description" : { - "description" : "The description which appears in the agent's Contact Control Panel (CCP).", + "description" : "The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.", "type" : "string", "minLength" : 0, "maxLength" : 4096 }, "ContactFlowArn" : { - "description" : "The Amazon Resource Name (ARN) of the contact flow.", + "description" : "The Amazon Resource Name (ARN) of the flow.", "type" : "string", "pattern" : "^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$" }, "References" : { - "description" : "A formatted URL that is shown to an agent in the Contact Control Panel (CCP).", + "description" : "Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.)", "patternProperties" : { "^(?=.{1,4096}$).+$" : { "$ref" : "#/definitions/Reference" @@ -133,11 +140,11 @@ "additionalProperties" : false }, "SubmitAutoEvaluationAction" : { - "description" : "The definition of submit auto evaluation action.", + "description" : "", "type" : "object", "properties" : { "EvaluationFormArn" : { - "description" : "The Amazon Resource Name (ARN) of the evaluation form.", + "description" : "", "type" : "string", "pattern" : "^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/evaluation-form/[-a-zA-Z0-9]*$" } @@ -146,11 +153,11 @@ "additionalProperties" : false }, "EventBridgeAction" : { - "description" : "The definition for event bridge action.", + "description" : "The EV action definition.", "type" : "object", "properties" : { "Name" : { - "description" : "The name of the event bridge action.", + "description" : "The name.", "type" : "string", "pattern" : "^[a-zA-Z0-9._-]{1,100}$" } @@ -163,47 +170,49 @@ "type" : "object" }, "SendNotificationAction" : { - "description" : "The definition for sending notification action.", + "description" : "Information about the send notification action.", "type" : "object", "properties" : { "DeliveryMethod" : { - "description" : "The means of delivery.", + "description" : "Notification delivery method.\n *Allowed value*: ``EMAIL``", "type" : "string", "enum" : [ "EMAIL" ] }, "Subject" : { - "description" : "The subject of notification.", + "description" : "The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.", "type" : "string", "minLength" : 1, "maxLength" : 200 }, "Content" : { - "description" : "The content of notification.", + "description" : "Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.", "type" : "string", "minLength" : 1, "maxLength" : 1024 }, "ContentType" : { - "description" : "The type of content.", + "description" : "Content type format.\n *Allowed value*: ``PLAIN_TEXT``", "type" : "string", "enum" : [ "PLAIN_TEXT" ] }, "Recipient" : { - "$ref" : "#/definitions/NotificationRecipientType" + "$ref" : "#/definitions/NotificationRecipientType", + "description" : "Notification recipient." } }, "required" : [ "DeliveryMethod", "Content", "Recipient", "ContentType" ], "additionalProperties" : false }, "CreateCaseAction" : { - "description" : "The definition for create case action.", + "description" : "", "type" : "object", "properties" : { "Fields" : { - "$ref" : "#/definitions/Fields" + "$ref" : "#/definitions/Fields", + "description" : "" }, "TemplateId" : { - "description" : "The Id of template.", + "description" : "", "type" : "string", "minLength" : 1, "maxLength" : 500 @@ -213,11 +222,12 @@ "additionalProperties" : false }, "UpdateCaseAction" : { - "description" : "The definition for update case action.", + "description" : "", "type" : "object", "properties" : { "Fields" : { - "$ref" : "#/definitions/Fields" + "$ref" : "#/definitions/Fields", + "description" : "" } }, "required" : [ "Fields" ], @@ -250,16 +260,16 @@ "maxItems" : 1 }, "RuleTriggerEventSource" : { - "description" : "The event source that will trigger the rule.", + "description" : "The name of the event source.", "type" : "object", "properties" : { "EventSourceName" : { - "description" : "The name of event source.", + "description" : "The name of the event source.", "type" : "string", "enum" : [ "OnContactEvaluationSubmit", "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", "OnSalesforceCaseCreate", "OnMetricDataUpdate", "OnCaseCreate", "OnCaseUpdate" ] }, "IntegrationAssociationArn" : { - "description" : "The Amazon Resource Name (ARN) for the AppIntegration association.", + "description" : "The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``", "type" : "string", "pattern" : "^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/integration-association/[-a-zA-Z0-9]*$" } @@ -334,32 +344,40 @@ "maxItems" : 1 }, "Actions" : { - "description" : "The list of actions that will be executed when a rule is triggered.", + "description" : "A list of actions to be run when the rule is triggered.", "type" : "object", "properties" : { "AssignContactCategoryActions" : { - "$ref" : "#/definitions/AssignContactCategoryActions" + "$ref" : "#/definitions/AssignContactCategoryActions", + "description" : "Information about the contact category action. The syntax can be empty, for example, ``{}``." }, "EventBridgeActions" : { - "$ref" : "#/definitions/EventBridgeActions" + "$ref" : "#/definitions/EventBridgeActions", + "description" : "Information about the EV action." }, "TaskActions" : { - "$ref" : "#/definitions/TaskActions" + "$ref" : "#/definitions/TaskActions", + "description" : "Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``" }, "SendNotificationActions" : { - "$ref" : "#/definitions/SendNotificationActions" + "$ref" : "#/definitions/SendNotificationActions", + "description" : "Information about the send notification action." }, "CreateCaseActions" : { - "$ref" : "#/definitions/CreateCaseActions" + "$ref" : "#/definitions/CreateCaseActions", + "description" : "" }, "UpdateCaseActions" : { - "$ref" : "#/definitions/UpdateCaseActions" + "$ref" : "#/definitions/UpdateCaseActions", + "description" : "" }, "EndAssociatedTasksActions" : { - "$ref" : "#/definitions/EndAssociatedTasksActions" + "$ref" : "#/definitions/EndAssociatedTasksActions", + "description" : "" }, "SubmitAutoEvaluationActions" : { - "$ref" : "#/definitions/SubmitAutoEvaluationActions" + "$ref" : "#/definitions/SubmitAutoEvaluationActions", + "description" : "" } }, "additionalProperties" : false @@ -371,14 +389,14 @@ "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" : "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 -", "pattern" : "^(?!aws:)[a-zA-Z+-=._:/]+$", "minLength" : 1, "maxLength" : 128 }, "Value" : { "type" : "string", - "description" : "The value for the tag. You can specify a value that's 1 to 256 characters in length.", + "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 -", "maxLength" : 256 } }, @@ -392,7 +410,7 @@ "pattern" : "^[a-zA-Z0-9._-]{1,200}$" }, "RuleArn" : { - "description" : "The Amazon Resource Name (ARN) of the rule.", + "description" : "", "type" : "string", "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/rule/[-a-zA-Z0-9]*$" }, @@ -402,24 +420,24 @@ "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$" }, "TriggerEventSource" : { - "description" : "The event source that triggers the rule.", + "description" : "The event source to trigger the rule.", "$ref" : "#/definitions/RuleTriggerEventSource" }, "Function" : { - "description" : "The conditions of a rule.", + "description" : "The conditions of the rule.", "type" : "string" }, "Actions" : { - "description" : "The list of actions that will be executed when a rule is triggered.", + "description" : "A list of actions to be run when the rule is triggered.", "$ref" : "#/definitions/Actions" }, "PublishStatus" : { - "description" : "The publish status of a rule, either draft or published.", + "description" : "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``", "type" : "string", "enum" : [ "DRAFT", "PUBLISHED" ] }, "Tags" : { - "description" : "One or more tags.", + "description" : "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.", "type" : "array", "maxItems" : 50, "uniqueItems" : true, diff --git a/aws-cloudformation-schema/aws-connectcampaignsv2-campaign.json b/aws-cloudformation-schema/aws-connectcampaignsv2-campaign.json index 3d00deedb2..410c271c0f 100644 --- a/aws-cloudformation-schema/aws-connectcampaignsv2-campaign.json +++ b/aws-cloudformation-schema/aws-connectcampaignsv2-campaign.json @@ -308,17 +308,32 @@ }, "Source" : { "type" : "object", - "description" : "The possible types of channel config parameters", + "description" : "The possible source of the campaign", "properties" : { "CustomerProfilesSegmentArn" : { "$ref" : "#/definitions/Arn" + }, + "EventTrigger" : { + "$ref" : "#/definitions/EventTrigger" } }, "oneOf" : [ { "required" : [ "CustomerProfilesSegmentArn" ] + }, { + "required" : [ "EventTrigger" ] } ], "additionalProperties" : false }, + "EventTrigger" : { + "type" : "object", + "description" : "The event trigger of the campaign", + "properties" : { + "CustomerProfilesDomainArn" : { + "$ref" : "#/definitions/Arn" + } + }, + "additionalProperties" : false + }, "TimeRange" : { "type" : "object", "description" : "Time range in 24 hour format", diff --git a/aws-cloudformation-schema/aws-ec2-launchtemplate.json b/aws-cloudformation-schema/aws-ec2-launchtemplate.json index e5a82f7e27..7a639721fb 100644 --- a/aws-cloudformation-schema/aws-ec2-launchtemplate.json +++ b/aws-cloudformation-schema/aws-ec2-launchtemplate.json @@ -51,6 +51,10 @@ "$ref" : "#/definitions/TagSpecification" } }, + "NetworkPerformanceOptions" : { + "description" : "", + "$ref" : "#/definitions/NetworkPerformanceOptions" + }, "UserData" : { "description" : "The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see [Run commands on your Amazon EC2 instance at launch](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html) in the *Amazon EC2 User Guide*.\n If you are creating the launch template for use with BATCH, the user data must be provided in the [MIME multi-part archive format](https://docs.aws.amazon.com/https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive). For more information, see [Amazon EC2 user data in launch templates](https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html) in the *User Guide*.", "type" : "string" diff --git a/aws-cloudformation-schema/aws-ec2-vpcendpoint.json b/aws-cloudformation-schema/aws-ec2-vpcendpoint.json index 359038de93..ef654ca5d1 100644 --- a/aws-cloudformation-schema/aws-ec2-vpcendpoint.json +++ b/aws-cloudformation-schema/aws-ec2-vpcendpoint.json @@ -7,68 +7,64 @@ }, "handlers" : { "read" : { - "permissions" : [ "ec2:DescribeVpcEndpoints" ] + "permissions" : [ "ec2:DescribeVpcEndpoints", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation" ] }, "create" : { - "permissions" : [ "ec2:CreateVpcEndpoint", "ec2:DescribeVpcEndpoints" ], + "permissions" : [ "ec2:CreateVpcEndpoint", "ec2:DescribeVpcEndpoints", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "vpc-lattice:CreateServiceNetworkVpcEndpointAssociation", "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation" ], "timeoutInMinutes" : 210 }, "update" : { - "permissions" : [ "ec2:ModifyVpcEndpoint", "ec2:DescribeVpcEndpoints" ], + "permissions" : [ "ec2:ModifyVpcEndpoint", "ec2:DescribeVpcEndpoints", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "vpc-lattice:CreateServiceNetworkVpcEndpointAssociation", "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation" ], "timeoutInMinutes" : 210 }, "list" : { - "permissions" : [ "ec2:DescribeVpcEndpoints" ] + "permissions" : [ "ec2:DescribeVpcEndpoints", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation" ] }, "delete" : { - "permissions" : [ "ec2:DeleteVpcEndpoints", "ec2:DescribeVpcEndpoints" ], + "permissions" : [ "ec2:DeleteVpcEndpoints", "ec2:DescribeVpcEndpoints", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation" ], "timeoutInMinutes" : 210 } }, "typeName" : "AWS::EC2::VPCEndpoint", "readOnlyProperties" : [ "/properties/NetworkInterfaceIds", "/properties/CreationTimestamp", "/properties/DnsEntries", "/properties/Id" ], "description" : "Specifies a VPC endpoint. A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS, an MKT Partner, or another AWS accounts in your organization. For more information, see the [User Guide](https://docs.aws.amazon.com/vpc/latest/privatelink/).\n An endpoint of type ``Interface`` establishes connections between the subnets in your VPC and an AWS-service, your own service, or a service hosted by another AWS-account. With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.\n An endpoint of type ``gateway`` serves as a target for a route in your route table for traffic destined for S3 or DDB. You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to S3, see [Why can't I connect to an S3 bucket using a gateway VPC endpoint?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint) \n An endpoint of type ``GatewayLoadBalancer`` provides private connectivity between your VPC and virtual appliances from a service provider.", - "createOnlyProperties" : [ "/properties/ServiceName", "/properties/VpcEndpointType", "/properties/VpcId" ], + "createOnlyProperties" : [ "/properties/ServiceName", "/properties/VpcEndpointType", "/properties/VpcId", "/properties/ServiceNetworkArn", "/properties/ResourceConfigurationArn" ], "additionalProperties" : false, "primaryIdentifier" : [ "/properties/Id" ], + "definitions" : { + "DnsOptionsSpecification" : { + "description" : "", + "additionalProperties" : false, + "type" : "object", + "properties" : { + "PrivateDnsOnlyForInboundResolverEndpoint" : { + "type" : "string", + "enum" : [ "OnlyInboundResolver", "AllResolvers", "NotSpecified" ] + }, + "DnsRecordIpType" : { + "type" : "string", + "enum" : [ "ipv4", "ipv6", "dualstack", "service-defined", "not-specified" ] + } + } + } + }, "properties" : { "PrivateDnsEnabled" : { "description" : "Indicate whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, ``kinesis.us-east-1.amazonaws.com``), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.\n To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``.\n This property is supported only for interface endpoints.\n Default: ``false``", "type" : "boolean" }, - "CreationTimestamp" : { + "IpAddressType" : { "description" : "", - "type" : "string" - }, - "VpcId" : { - "description" : "The ID of the VPC.", - "type" : "string" - }, - "RouteTableIds" : { - "uniqueItems" : true, - "description" : "The IDs of the route tables. Routing is supported only for gateway endpoints.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "relationshipRef" : { - "typeName" : "AWS::EC2::RouteTable", - "propertyPath" : "/properties/RouteTableId" - }, - "type" : "string" - } + "type" : "string", + "enum" : [ "ipv4", "ipv6", "dualstack", "not-specified" ] }, - "ServiceName" : { - "description" : "The name of the endpoint service.", + "CreationTimestamp" : { + "description" : "", "type" : "string" }, - "PolicyDocument" : { - "description" : "An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints.\n For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section:\n ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ \"Version\":\"2012-10-17\", \"Statement\": [{ \"Effect\":\"Allow\", \"Principal\":\"*\", \"Action\":[\"logs:Describe*\",\"logs:Get*\",\"logs:List*\",\"logs:FilterLogEvents\"], \"Resource\":\"*\" }] }'``", - "type" : [ "string", "object" ] - }, - "VpcEndpointType" : { - "description" : "The type of endpoint.\n Default: Gateway", - "type" : "string", - "enum" : [ "Interface", "Gateway", "GatewayLoadBalancer" ] + "DnsOptions" : { + "description" : "", + "$ref" : "#/definitions/DnsOptionsSpecification" }, "NetworkInterfaceIds" : { "uniqueItems" : false, @@ -79,10 +75,6 @@ "type" : "string" } }, - "Id" : { - "description" : "", - "type" : "string" - }, "DnsEntries" : { "uniqueItems" : false, "description" : "", @@ -92,6 +84,10 @@ "type" : "string" } }, + "ResourceConfigurationArn" : { + "description" : "", + "type" : "string" + }, "SecurityGroupIds" : { "uniqueItems" : true, "description" : "The IDs of the security groups to associate with the endpoint network interfaces. If this parameter is not specified, we use the default security group for the VPC. Security groups are supported only for interface endpoints.", @@ -129,7 +125,45 @@ }, "type" : "string" } + }, + "ServiceNetworkArn" : { + "description" : "", + "type" : "string" + }, + "VpcId" : { + "description" : "The ID of the VPC.", + "type" : "string" + }, + "RouteTableIds" : { + "uniqueItems" : true, + "description" : "The IDs of the route tables. Routing is supported only for gateway endpoints.", + "insertionOrder" : false, + "type" : "array", + "items" : { + "relationshipRef" : { + "typeName" : "AWS::EC2::RouteTable", + "propertyPath" : "/properties/RouteTableId" + }, + "type" : "string" + } + }, + "ServiceName" : { + "description" : "The name of the endpoint service.", + "type" : "string" + }, + "PolicyDocument" : { + "description" : "An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints.\n For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section:\n ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ \"Version\":\"2012-10-17\", \"Statement\": [{ \"Effect\":\"Allow\", \"Principal\":\"*\", \"Action\":[\"logs:Describe*\",\"logs:Get*\",\"logs:List*\",\"logs:FilterLogEvents\"], \"Resource\":\"*\" }] }'``", + "type" : [ "string", "object" ] + }, + "VpcEndpointType" : { + "description" : "The type of endpoint.\n Default: Gateway", + "type" : "string", + "enum" : [ "Interface", "Gateway", "GatewayLoadBalancer", "ServiceNetwork", "Resource" ] + }, + "Id" : { + "description" : "", + "type" : "string" } }, - "required" : [ "VpcId", "ServiceName" ] + "required" : [ "VpcId" ] } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-ecs-service.json b/aws-cloudformation-schema/aws-ecs-service.json index f340bb178e..ada20e6146 100644 --- a/aws-cloudformation-schema/aws-ecs-service.json +++ b/aws-cloudformation-schema/aws-ecs-service.json @@ -8,6 +8,7 @@ "cloudFormationSystemTags" : false }, "propertyTransform" : { + "/properties/TaskDefinition" : "TaskDefinition $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,3}[-]{0,1}[a-z]{0,3}:ecs:[a-z0-9-]+:[0-9]{12}:task-definition/\", $contains(TaskDefinition,\":\")?TaskDefinition:$join([TaskDefinition, \":[0-9]+\"])])", "/properties/Role" : "Role $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,3}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/{1}\", Role])" }, "handlers" : { @@ -107,17 +108,20 @@ } }, "VpcLatticeConfiguration" : { - "description" : "", + "description" : "The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to.", "additionalProperties" : false, "type" : "object", "properties" : { "TargetGroupArn" : { + "description" : "The full Amazon Resource Name (ARN) of the target group or groups associated with the VPC Lattice configuration that the Amazon ECS tasks will be registered to.", "type" : "string" }, "PortName" : { + "description" : "The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition.", "type" : "string" }, "RoleArn" : { + "description" : "The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS
 infrastructure IAM role that is used to manage your VPC Lattice infrastructure.", "type" : "string" } }, @@ -211,7 +215,7 @@ "required" : [ "IssuerCertificateAuthority" ] }, "DeploymentController" : { - "description" : "The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*.", + "description" : "The deployment controller to use for the service.", "additionalProperties" : false, "type" : "object", "properties" : { @@ -287,7 +291,7 @@ } }, "AssignPublicIp" : { - "description" : "Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``.", + "description" : "Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``.", "type" : "string", "enum" : [ "DISABLED", "ENABLED" ] } @@ -595,7 +599,7 @@ }, "AvailabilityZoneRebalancing" : { "default" : "DISABLED", - "description" : "", + "description" : "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*.", "type" : "string", "enum" : [ "ENABLED", "DISABLED" ] }, @@ -616,7 +620,7 @@ } }, "HealthCheckGracePeriodSeconds" : { - "description" : "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used.\n If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html).\n If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up.", + "description" : "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.\n If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up.", "type" : "integer" }, "EnableECSManagedTags" : { @@ -654,7 +658,7 @@ "type" : "integer" }, "VpcLatticeConfigurations" : { - "description" : "", + "description" : "The VPC Lattice configuration for the service being created.", "type" : "array", "items" : { "$ref" : "#/definitions/VpcLatticeConfiguration" diff --git a/aws-cloudformation-schema/aws-ecs-taskdefinition.json b/aws-cloudformation-schema/aws-ecs-taskdefinition.json index 88de9cb4ca..bfeffaec24 100644 --- a/aws-cloudformation-schema/aws-ecs-taskdefinition.json +++ b/aws-cloudformation-schema/aws-ecs-taskdefinition.json @@ -953,7 +953,7 @@ "type" : "object", "properties" : { "SizeInGiB" : { - "description" : "The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB.", + "description" : "The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB.", "type" : "integer" } } diff --git a/aws-cloudformation-schema/aws-emrserverless-application.json b/aws-cloudformation-schema/aws-emrserverless-application.json index 486bbdc2a0..1a24bc85e4 100644 --- a/aws-cloudformation-schema/aws-emrserverless-application.json +++ b/aws-cloudformation-schema/aws-emrserverless-application.json @@ -47,6 +47,21 @@ "$ref" : "#/definitions/ConfigurationObject" } }, + "SchedulerConfiguration" : { + "type" : "object", + "description" : "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above.", + "additionalProperties" : false, + "properties" : { + "QueueTimeoutMinutes" : { + "description" : "The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720.", + "type" : "integer" + }, + "MaxConcurrentRuns" : { + "description" : "The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000.", + "type" : "integer" + } + } + }, "MonitoringConfiguration" : { "type" : "object", "description" : "Monitoring configuration for batch and interactive JobRun.", @@ -532,12 +547,16 @@ "WorkerTypeSpecifications" : { "description" : "The key-value pairs that specify worker type to WorkerTypeSpecificationInput. This parameter must contain all valid worker types for a Spark or Hive application. Valid worker types include Driver and Executor for Spark applications and HiveDriver and TezTask for Hive applications. You can either set image details in this parameter for each worker type, or in imageConfiguration for all worker types.", "$ref" : "#/definitions/WorkerTypeSpecificationInputMap" + }, + "SchedulerConfiguration" : { + "description" : "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above.", + "$ref" : "#/definitions/SchedulerConfiguration" } }, "additionalProperties" : false, "required" : [ "ReleaseLabel", "Type" ], "createOnlyProperties" : [ "/properties/Name", "/properties/Type" ], - "conditionalCreateOnlyProperties" : [ "/properties/Architecture", "/properties/ReleaseLabel", "/properties/WorkerTypeSpecifications", "/properties/MaximumCapacity", "/properties/InitialCapacity", "/properties/AutoStartConfiguration", "/properties/AutoStopConfiguration", "/properties/NetworkConfiguration", "/properties/ImageConfiguration", "/properties/MonitoringConfiguration", "/properties/RuntimeConfiguration", "/properties/InteractiveConfiguration" ], + "conditionalCreateOnlyProperties" : [ "/properties/Architecture", "/properties/ReleaseLabel", "/properties/WorkerTypeSpecifications", "/properties/MaximumCapacity", "/properties/InitialCapacity", "/properties/AutoStartConfiguration", "/properties/AutoStopConfiguration", "/properties/NetworkConfiguration", "/properties/ImageConfiguration", "/properties/MonitoringConfiguration", "/properties/RuntimeConfiguration", "/properties/InteractiveConfiguration", "/properties/SchedulerConfiguration" ], "readOnlyProperties" : [ "/properties/Arn", "/properties/ApplicationId" ], "primaryIdentifier" : [ "/properties/ApplicationId" ], "tagging" : { @@ -545,7 +564,8 @@ "tagOnCreate" : true, "tagUpdatable" : true, "cloudFormationSystemTags" : false, - "tagProperty" : "/properties/Tags" + "tagProperty" : "/properties/Tags", + "permissions" : [ "emr-serverless:TagResource", "emr-serverless:UntagResource", "kms:TagResource", "kms:UntagResource" ] }, "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-fis-experimenttemplate.json b/aws-cloudformation-schema/aws-fis-experimenttemplate.json index 7ed2a5ce95..52b094c5c9 100644 --- a/aws-cloudformation-schema/aws-fis-experimenttemplate.json +++ b/aws-cloudformation-schema/aws-fis-experimenttemplate.json @@ -295,7 +295,7 @@ "ExperimentTemplateExperimentReportConfiguration" : { "type" : "object", "additionalProperties" : false, - "required" : [ "Outputs", "DataSources" ], + "required" : [ "Outputs" ], "properties" : { "Outputs" : { "type" : "object", diff --git a/aws-cloudformation-schema/aws-iot-softwarepackageversion.json b/aws-cloudformation-schema/aws-iot-softwarepackageversion.json index 7cef98a599..56b37e5a88 100644 --- a/aws-cloudformation-schema/aws-iot-softwarepackageversion.json +++ b/aws-cloudformation-schema/aws-iot-softwarepackageversion.json @@ -59,7 +59,8 @@ "pattern" : "^[a-zA-Z0-9-_.]+$" }, "PackageVersionArn" : { - "type" : "string" + "type" : "string", + "pattern" : "^arn:[!-~]+$" }, "Status" : { "$ref" : "#/definitions/PackageVersionStatus" @@ -86,7 +87,8 @@ "tagOnCreate" : true, "tagUpdatable" : true, "cloudFormationSystemTags" : true, - "tagProperty" : "/properties/Tags" + "tagProperty" : "/properties/Tags", + "permissions" : [ "iot:TagResource", "iot:UntagResource", "iot:ListTagsForResource" ] }, "required" : [ "PackageName" ], "readOnlyProperties" : [ "/properties/ErrorReason", "/properties/PackageVersionArn", "/properties/Status" ], diff --git a/aws-cloudformation-schema/aws-logs-integration.json b/aws-cloudformation-schema/aws-logs-integration.json index e1a4b4f5de..09dbfe2888 100644 --- a/aws-cloudformation-schema/aws-logs-integration.json +++ b/aws-cloudformation-schema/aws-logs-integration.json @@ -44,7 +44,7 @@ "type" : "string", "pattern" : "[\\.\\-_/#A-Za-z0-9]+", "minLength" : 1, - "maxLength" : 256 + "maxLength" : 50 }, "IntegrationType" : { "description" : "The type of the Integration.", diff --git a/aws-cloudformation-schema/aws-logs-loggroup.json b/aws-cloudformation-schema/aws-logs-loggroup.json index 92b0d3e7fb..87d34cbd1c 100644 --- a/aws-cloudformation-schema/aws-logs-loggroup.json +++ b/aws-cloudformation-schema/aws-logs-loggroup.json @@ -42,6 +42,16 @@ "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" }, + "FieldIndexPolicies" : { + "description" : "", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "description" : "Index policy for log group in JSON format", + "type" : "object" + } + }, "LogGroupClass" : { "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", @@ -69,13 +79,13 @@ }, "handlers" : { "create" : { - "permissions" : [ "logs:DescribeLogGroups", "logs:CreateLogGroup", "logs:PutRetentionPolicy", "logs:TagResource", "logs:GetDataProtectionPolicy", "logs:PutDataProtectionPolicy", "logs:CreateLogDelivery", "s3:REST.PUT.OBJECT", "firehose:TagDeliveryStream", "logs:PutResourcePolicy", "logs:DescribeResourcePolicies" ] + "permissions" : [ "logs:DescribeLogGroups", "logs:CreateLogGroup", "logs:PutRetentionPolicy", "logs:TagResource", "logs:GetDataProtectionPolicy", "logs:PutDataProtectionPolicy", "logs:CreateLogDelivery", "s3:REST.PUT.OBJECT", "firehose:TagDeliveryStream", "logs:PutResourcePolicy", "logs:DescribeResourcePolicies", "logs:PutIndexPolicy", "logs:DescribeIndexPolicies" ] }, "read" : { - "permissions" : [ "logs:DescribeLogGroups", "logs:ListTagsForResource", "logs:GetDataProtectionPolicy" ] + "permissions" : [ "logs:DescribeLogGroups", "logs:ListTagsForResource", "logs:GetDataProtectionPolicy", "logs:DescribeIndexPolicies" ] }, "update" : { - "permissions" : [ "logs:DescribeLogGroups", "logs:AssociateKmsKey", "logs:DisassociateKmsKey", "logs:PutRetentionPolicy", "logs:DeleteRetentionPolicy", "logs:TagResource", "logs:UntagResource", "logs:GetDataProtectionPolicy", "logs:PutDataProtectionPolicy", "logs:CreateLogDelivery", "s3:REST.PUT.OBJECT", "firehose:TagDeliveryStream" ] + "permissions" : [ "logs:DescribeLogGroups", "logs:AssociateKmsKey", "logs:DisassociateKmsKey", "logs:PutRetentionPolicy", "logs:DeleteRetentionPolicy", "logs:TagResource", "logs:UntagResource", "logs:GetDataProtectionPolicy", "logs:PutDataProtectionPolicy", "logs:CreateLogDelivery", "s3:REST.PUT.OBJECT", "firehose:TagDeliveryStream", "logs:PutIndexPolicy", "logs:DeleteIndexPolicy" ] }, "delete" : { "permissions" : [ "logs:DescribeLogGroups", "logs:DeleteLogGroup", "logs:DeleteDataProtectionPolicy" ] diff --git a/aws-cloudformation-schema/aws-logs-metricfilter.json b/aws-cloudformation-schema/aws-logs-metricfilter.json index 711e0b1d40..0d0417f9f0 100644 --- a/aws-cloudformation-schema/aws-logs-metricfilter.json +++ b/aws-cloudformation-schema/aws-logs-metricfilter.json @@ -129,6 +129,10 @@ "type" : "string", "maxLength" : 512 }, + "ApplyOnTransformedLogs" : { + "description" : "", + "type" : "boolean" + }, "FilterName" : { "minLength" : 1, "pattern" : "^[^:*]{1,512}", diff --git a/aws-cloudformation-schema/aws-logs-querydefinition.json b/aws-cloudformation-schema/aws-logs-querydefinition.json index cd2459fba8..9727981652 100644 --- a/aws-cloudformation-schema/aws-logs-querydefinition.json +++ b/aws-cloudformation-schema/aws-logs-querydefinition.json @@ -37,6 +37,12 @@ "type" : "string", "minLength" : 0, "maxLength" : 256 + }, + "QueryLanguage" : { + "description" : "Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default.", + "type" : "string", + "enum" : [ "CWLI", "SQL", "PPL" ], + "default" : "CWLI" } }, "required" : [ "Name", "QueryString" ], diff --git a/aws-cloudformation-schema/aws-logs-subscriptionfilter.json b/aws-cloudformation-schema/aws-logs-subscriptionfilter.json index 2f82a596dd..62952e781f 100644 --- a/aws-cloudformation-schema/aws-logs-subscriptionfilter.json +++ b/aws-cloudformation-schema/aws-logs-subscriptionfilter.json @@ -35,6 +35,10 @@ "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" ] + }, + "ApplyOnTransformedLogs" : { + "description" : "", + "type" : "boolean" } }, "handlers" : { diff --git a/aws-cloudformation-schema/aws-m2-environment.json b/aws-cloudformation-schema/aws-m2-environment.json index dcac576f50..f9374a6a6e 100644 --- a/aws-cloudformation-schema/aws-m2-environment.json +++ b/aws-cloudformation-schema/aws-m2-environment.json @@ -56,6 +56,10 @@ "required" : [ "DesiredCapacity" ], "additionalProperties" : false }, + "NetworkType" : { + "type" : "string", + "enum" : [ "ipv4", "dual" ] + }, "StorageConfiguration" : { "type" : "object", "description" : "Defines the storage configuration for an environment.", @@ -135,6 +139,9 @@ "description" : "The name of the environment.", "pattern" : "^[A-Za-z0-9][A-Za-z0-9_\\-]{1,59}$" }, + "NetworkType" : { + "$ref" : "#/definitions/NetworkType" + }, "PreferredMaintenanceWindow" : { "type" : "string", "description" : "Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned.", @@ -183,7 +190,7 @@ }, "required" : [ "EngineType", "InstanceType", "Name" ], "readOnlyProperties" : [ "/properties/EnvironmentArn", "/properties/EnvironmentId" ], - "createOnlyProperties" : [ "/properties/Description", "/properties/EngineType", "/properties/KmsKeyId", "/properties/Name", "/properties/PubliclyAccessible", "/properties/SecurityGroupIds", "/properties/StorageConfigurations", "/properties/SubnetIds" ], + "createOnlyProperties" : [ "/properties/Description", "/properties/EngineType", "/properties/KmsKeyId", "/properties/Name", "/properties/NetworkType", "/properties/PubliclyAccessible", "/properties/SecurityGroupIds", "/properties/StorageConfigurations", "/properties/SubnetIds" ], "primaryIdentifier" : [ "/properties/EnvironmentArn" ], "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-medialive-cluster.json b/aws-cloudformation-schema/aws-medialive-cluster.json index d846cff099..730ec01248 100644 --- a/aws-cloudformation-schema/aws-medialive-cluster.json +++ b/aws-cloudformation-schema/aws-medialive-cluster.json @@ -143,7 +143,7 @@ "permissions" : [ "medialive:UpdateCluster", "medialive:DescribeCluster", "medialive:CreateTags", "medialive:DeleteTags", "medialive:ListTagsForResource" ] }, "delete" : { - "permissions" : [ "medialive:DeleteCluster", "medialive:DescribeCluster" ] + "permissions" : [ "medialive:DeleteCluster", "medialive:DescribeCluster", "ecs:DeleteService" ] }, "list" : { "permissions" : [ "medialive:ListClusters" ] diff --git a/aws-cloudformation-schema/aws-msk-replicator.json b/aws-cloudformation-schema/aws-msk-replicator.json index 8f88c18575..642938ab70 100644 --- a/aws-cloudformation-schema/aws-msk-replicator.json +++ b/aws-cloudformation-schema/aws-msk-replicator.json @@ -305,7 +305,7 @@ "primaryIdentifier" : [ "/properties/ReplicatorArn" ], "additionalIdentifiers" : [ [ "/properties/ReplicatorName" ] ], "readOnlyProperties" : [ "/properties/ReplicatorArn" ], - "createOnlyProperties" : [ "/properties/ReplicatorName", "/properties/Description", "/properties/KafkaClusters", "/properties/ServiceExecutionRoleArn" ], + "createOnlyProperties" : [ "/properties/ReplicatorName", "/properties/Description", "/properties/KafkaClusters", "/properties/ServiceExecutionRoleArn", "/properties/ReplicationInfoList/*/SourceKafkaClusterArn", "/properties/ReplicationInfoList/*/TargetKafkaClusterArn", "/properties/ReplicationInfoList/*/TargetCompressionType", "/properties/ReplicationInfoList/*/TopicReplication/StartingPosition", "/properties/ReplicationInfoList/*/TopicReplication/TopicNameConfiguration" ], "handlers" : { "create" : { "permissions" : [ "ec2:CreateNetworkInterface", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "iam:CreateServiceLinkedRole", "iam:PassRole", "kafka:CreateReplicator", "kafka:CreateReplicatorReference", "kafka:DescribeClusterV2", "kafka:DescribeReplicator", "kafka:GetBootstrapBrokers", "kafka:ListTagsForResource", "kafka:TagResource" ] diff --git a/aws-cloudformation-schema/aws-quicksight-dataset.json b/aws-cloudformation-schema/aws-quicksight-dataset.json index c5d8c48e53..0ad5e01d9b 100644 --- a/aws-cloudformation-schema/aws-quicksight-dataset.json +++ b/aws-cloudformation-schema/aws-quicksight-dataset.json @@ -469,6 +469,20 @@ "type" : "string", "enum" : [ "MULTI_VALUED", "SINGLE_VALUED" ] }, + "PerformanceConfiguration" : { + "additionalProperties" : false, + "type" : "object", + "properties" : { + "UniqueKeys" : { + "minItems" : 1, + "maxItems" : 1, + "type" : "array", + "items" : { + "$ref" : "#/definitions/UniqueKey" + } + } + } + }, "CalculatedColumn" : { "description" : "

A calculated column for a dataset.

", "additionalProperties" : false, @@ -1007,6 +1021,23 @@ }, "required" : [ "ParameterName" ] }, + "UniqueKey" : { + "additionalProperties" : false, + "type" : "object", + "properties" : { + "ColumnNames" : { + "minItems" : 1, + "maxItems" : 1, + "type" : "array", + "items" : { + "minLength" : 1, + "type" : "string", + "maxLength" : 127 + } + } + }, + "required" : [ "ColumnNames" ] + }, "GeoSpatialDataRole" : { "type" : "string", "enum" : [ "COUNTRY", "STATE", "COUNTY", "CITY", "POSTCODE", "LONGITUDE", "LATITUDE", "POLITICAL1", "CENSUS_TRACT", "CENSUS_BLOCK_GROUP", "CENSUS_BLOCK" ] @@ -1254,6 +1285,9 @@ "description" : "

The amount of SPICE capacity used by this dataset. This is 0 if the dataset isn't\n imported into SPICE.

", "type" : "number" }, + "PerformanceConfiguration" : { + "$ref" : "#/definitions/PerformanceConfiguration" + }, "RowLevelPermissionDataSet" : { "$ref" : "#/definitions/RowLevelPermissionDataSet" }, diff --git a/aws-cloudformation-schema/aws-s3-bucket.json b/aws-cloudformation-schema/aws-s3-bucket.json index 092be00afc..d5b6c83cdc 100644 --- a/aws-cloudformation-schema/aws-s3-bucket.json +++ b/aws-cloudformation-schema/aws-s3-bucket.json @@ -68,10 +68,6 @@ "uniqueItems" : true, "insertionOrder" : true }, - "MetadataTableConfiguration" : { - "$ref" : "#/definitions/MetadataTableConfiguration", - "description" : "" - }, "NotificationConfiguration" : { "$ref" : "#/definitions/NotificationConfiguration", "description" : "Configuration that defines how Amazon S3 handles bucket notifications." @@ -1408,65 +1404,6 @@ "Arn" : { "description" : "the Amazon Resource Name (ARN) of the specified bucket.", "type" : "string" - }, - "MetadataTableConfiguration" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "S3TablesDestination" : { - "$ref" : "#/definitions/S3TablesDestination" - }, - "Status" : { - "type" : "string", - "description" : "Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records." - }, - "Error" : { - "$ref" : "#/definitions/MetadataTableError", - "description" : "Returns the Error value of the GetBucketMetadataTableConfiguration response." - } - }, - "required" : [ "S3TablesDestination" ], - "description" : "" - }, - "S3TablesDestination" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "TableBucketArn" : { - "type" : "string", - "description" : "The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket." - }, - "TableName" : { - "type" : "string", - "description" : "The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket." - }, - "TableNamespace" : { - "type" : "string", - "description" : "The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata." - }, - "TableArn" : { - "type" : "string", - "description" : "The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket." - } - }, - "required" : [ "TableBucketArn", "TableName" ], - "description" : "" - }, - "MetadataTableError" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "ErrorCode" : { - "type" : "string", - "description" : "If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration." - }, - "ErrorMessage" : { - "type" : "string", - "description" : "If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration." - } - }, - "required" : [ "ErrorCode", "ErrorMessage" ], - "description" : "" } }, "tagging" : { @@ -1487,10 +1424,10 @@ }, "handlers" : { "create" : { - "permissions" : [ "s3:CreateBucket", "s3:PutBucketTagging", "s3:PutAnalyticsConfiguration", "s3:PutEncryptionConfiguration", "s3:PutBucketCORS", "s3:PutInventoryConfiguration", "s3:PutLifecycleConfiguration", "s3:PutMetricsConfiguration", "s3:PutBucketNotification", "s3:PutBucketReplication", "s3:PutBucketWebsite", "s3:PutAccelerateConfiguration", "s3:PutBucketPublicAccessBlock", "s3:PutReplicationConfiguration", "s3:PutObjectAcl", "s3:PutBucketObjectLockConfiguration", "s3:GetBucketAcl", "s3:ListBucket", "iam:PassRole", "s3:DeleteObject", "s3:PutBucketLogging", "s3:PutBucketVersioning", "s3:PutObjectLockConfiguration", "s3:PutBucketOwnershipControls", "s3:PutIntelligentTieringConfiguration", "s3:CreateBucketMetadataTableConfiguration" ] + "permissions" : [ "s3:CreateBucket", "s3:PutBucketTagging", "s3:PutAnalyticsConfiguration", "s3:PutEncryptionConfiguration", "s3:PutBucketCORS", "s3:PutInventoryConfiguration", "s3:PutLifecycleConfiguration", "s3:PutMetricsConfiguration", "s3:PutBucketNotification", "s3:PutBucketReplication", "s3:PutBucketWebsite", "s3:PutAccelerateConfiguration", "s3:PutBucketPublicAccessBlock", "s3:PutReplicationConfiguration", "s3:PutObjectAcl", "s3:PutBucketObjectLockConfiguration", "s3:GetBucketAcl", "s3:ListBucket", "iam:PassRole", "s3:DeleteObject", "s3:PutBucketLogging", "s3:PutBucketVersioning", "s3:PutObjectLockConfiguration", "s3:PutBucketOwnershipControls", "s3:PutIntelligentTieringConfiguration" ] }, "read" : { - "permissions" : [ "s3:GetAccelerateConfiguration", "s3:GetLifecycleConfiguration", "s3:GetBucketPublicAccessBlock", "s3:GetAnalyticsConfiguration", "s3:GetBucketCORS", "s3:GetEncryptionConfiguration", "s3:GetInventoryConfiguration", "s3:GetBucketLogging", "s3:GetMetricsConfiguration", "s3:GetBucketNotification", "s3:GetBucketVersioning", "s3:GetReplicationConfiguration", "S3:GetBucketWebsite", "s3:GetBucketPublicAccessBlock", "s3:GetBucketObjectLockConfiguration", "s3:GetBucketTagging", "s3:GetBucketOwnershipControls", "s3:GetIntelligentTieringConfiguration", "s3:GetBucketMetadataTableConfiguration", "s3:ListBucket" ] + "permissions" : [ "s3:GetAccelerateConfiguration", "s3:GetLifecycleConfiguration", "s3:GetBucketPublicAccessBlock", "s3:GetAnalyticsConfiguration", "s3:GetBucketCORS", "s3:GetEncryptionConfiguration", "s3:GetInventoryConfiguration", "s3:GetBucketLogging", "s3:GetMetricsConfiguration", "s3:GetBucketNotification", "s3:GetBucketVersioning", "s3:GetReplicationConfiguration", "S3:GetBucketWebsite", "s3:GetBucketPublicAccessBlock", "s3:GetBucketObjectLockConfiguration", "s3:GetBucketTagging", "s3:GetBucketOwnershipControls", "s3:GetIntelligentTieringConfiguration", "s3:ListBucket" ] }, "update" : { "permissions" : [ "s3:PutBucketAcl", "s3:PutBucketTagging", "s3:PutAnalyticsConfiguration", "s3:PutEncryptionConfiguration", "s3:PutBucketCORS", "s3:PutInventoryConfiguration", "s3:PutLifecycleConfiguration", "s3:PutMetricsConfiguration", "s3:PutBucketNotification", "s3:PutBucketReplication", "s3:PutBucketWebsite", "s3:PutAccelerateConfiguration", "s3:PutBucketPublicAccessBlock", "s3:PutReplicationConfiguration", "s3:PutBucketOwnershipControls", "s3:PutIntelligentTieringConfiguration", "s3:DeleteBucketWebsite", "s3:PutBucketLogging", "s3:PutBucketVersioning", "s3:PutObjectLockConfiguration", "s3:PutBucketObjectLockConfiguration", "s3:DeleteBucketAnalyticsConfiguration", "s3:DeleteBucketCors", "s3:DeleteBucketMetricsConfiguration", "s3:DeleteBucketEncryption", "s3:DeleteBucketLifecycle", "s3:DeleteBucketReplication", "iam:PassRole", "s3:ListBucket" ] diff --git a/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json b/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json index fd55384668..d9956a3b21 100644 --- a/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json +++ b/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json @@ -502,5 +502,13 @@ }, "readOnlyProperties" : [ "/properties/CreationTime", "/properties/JobDefinitionArn" ], "createOnlyProperties" : [ "/properties/JobDefinitionName", "/properties/DataQualityAppSpecification", "/properties/DataQualityBaselineConfig", "/properties/DataQualityJobInput", "/properties/DataQualityJobOutputConfig", "/properties/JobResources", "/properties/NetworkConfig", "/properties/RoleArn", "/properties/StoppingCondition", "/properties/Tags", "/properties/EndpointName" ], - "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ] + "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : false, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "sagemaker:AddTags", "sagemaker:ListTags" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-sagemaker-modelbiasjobdefinition.json b/aws-cloudformation-schema/aws-sagemaker-modelbiasjobdefinition.json index d7be432e7e..395445b814 100644 --- a/aws-cloudformation-schema/aws-sagemaker-modelbiasjobdefinition.json +++ b/aws-cloudformation-schema/aws-sagemaker-modelbiasjobdefinition.json @@ -533,5 +533,13 @@ }, "readOnlyProperties" : [ "/properties/CreationTime", "/properties/JobDefinitionArn" ], "createOnlyProperties" : [ "/properties/JobDefinitionName", "/properties/ModelBiasAppSpecification", "/properties/ModelBiasBaselineConfig", "/properties/ModelBiasJobInput", "/properties/ModelBiasJobOutputConfig", "/properties/JobResources", "/properties/NetworkConfig", "/properties/RoleArn", "/properties/StoppingCondition", "/properties/Tags", "/properties/EndpointName" ], - "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ] + "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : false, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "sagemaker:AddTags", "sagemaker:ListTags" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-sagemaker-modelexplainabilityjobdefinition.json b/aws-cloudformation-schema/aws-sagemaker-modelexplainabilityjobdefinition.json index c5c6cb3c85..f2012a1ea0 100644 --- a/aws-cloudformation-schema/aws-sagemaker-modelexplainabilityjobdefinition.json +++ b/aws-cloudformation-schema/aws-sagemaker-modelexplainabilityjobdefinition.json @@ -491,5 +491,13 @@ }, "readOnlyProperties" : [ "/properties/CreationTime", "/properties/JobDefinitionArn" ], "createOnlyProperties" : [ "/properties/JobDefinitionName", "/properties/ModelExplainabilityAppSpecification", "/properties/ModelExplainabilityBaselineConfig", "/properties/ModelExplainabilityJobInput", "/properties/ModelExplainabilityJobOutputConfig", "/properties/JobResources", "/properties/NetworkConfig", "/properties/RoleArn", "/properties/StoppingCondition", "/properties/Tags", "/properties/EndpointName" ], - "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ] + "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : false, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "sagemaker:AddTags", "sagemaker:ListTags" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-sagemaker-modelqualityjobdefinition.json b/aws-cloudformation-schema/aws-sagemaker-modelqualityjobdefinition.json index 7f4fdc1625..f821cf1d40 100644 --- a/aws-cloudformation-schema/aws-sagemaker-modelqualityjobdefinition.json +++ b/aws-cloudformation-schema/aws-sagemaker-modelqualityjobdefinition.json @@ -555,5 +555,13 @@ }, "readOnlyProperties" : [ "/properties/CreationTime", "/properties/JobDefinitionArn" ], "createOnlyProperties" : [ "/properties/JobDefinitionName", "/properties/ModelQualityAppSpecification", "/properties/ModelQualityBaselineConfig", "/properties/ModelQualityJobInput", "/properties/ModelQualityJobOutputConfig", "/properties/JobResources", "/properties/NetworkConfig", "/properties/RoleArn", "/properties/StoppingCondition", "/properties/Tags", "/properties/EndpointName" ], - "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ] + "writeOnlyProperties" : [ "/properties/EndpointName", "/properties/Tags", "/properties/Tags/*/Key", "/properties/Tags/*/Value" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : false, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "sagemaker:AddTags", "sagemaker:ListTags" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-ssm-resourcepolicy.json b/aws-cloudformation-schema/aws-ssm-resourcepolicy.json index 6a22c999c6..1b1f4ee0c0 100644 --- a/aws-cloudformation-schema/aws-ssm-resourcepolicy.json +++ b/aws-cloudformation-schema/aws-ssm-resourcepolicy.json @@ -36,10 +36,10 @@ "permissions" : [ "ssm:GetResourcePolicies" ] }, "update" : { - "permissions" : [ "ssm:PutResourcePolicy" ] + "permissions" : [ "ssm:GetResourcePolicies", "ssm:PutResourcePolicy" ] }, "delete" : { - "permissions" : [ "ssm:DeleteResourcePolicy" ] + "permissions" : [ "ssm:GetResourcePolicies", "ssm:DeleteResourcePolicy" ] }, "list" : { "permissions" : [ "ssm:GetResourcePolicies" ] diff --git a/aws-cloudformation-schema/aws-transfer-server.json b/aws-cloudformation-schema/aws-transfer-server.json index a9ddcc907a..0f8a76e0d6 100644 --- a/aws-cloudformation-schema/aws-transfer-server.json +++ b/aws-cloudformation-schema/aws-transfer-server.json @@ -141,6 +141,10 @@ "type" : "string", "enum" : [ "PASSWORD", "PUBLIC_KEY", "PUBLIC_KEY_OR_PASSWORD", "PUBLIC_KEY_AND_PASSWORD" ] }, + "State" : { + "type" : "string", + "enum" : [ "OFFLINE", "ONLINE", "STARTING", "STOPPING", "START_FAILED", "STOP_FAILED" ] + }, "Tag" : { "type" : "object", "properties" : { @@ -287,6 +291,9 @@ "minLength" : 19, "pattern" : "^s-([0-9a-f]{17})$" }, + "State" : { + "$ref" : "#/definitions/State" + }, "StructuredLogDestinations" : { "type" : "array", "insertionOrder" : false, @@ -312,7 +319,7 @@ "$ref" : "#/definitions/WorkflowDetails" } }, - "readOnlyProperties" : [ "/properties/Arn", "/properties/As2ServiceManagedEgressIpAddresses", "/properties/ServerId" ], + "readOnlyProperties" : [ "/properties/Arn", "/properties/As2ServiceManagedEgressIpAddresses", "/properties/ServerId", "/properties/State" ], "writeOnlyProperties" : [ "/properties/IdentityProviderType" ], "createOnlyProperties" : [ "/properties/Domain", "/properties/IdentityProviderType" ], "primaryIdentifier" : [ "/properties/Arn" ], diff --git a/aws-cloudformation-schema/aws-workspaces-workspacespool.json b/aws-cloudformation-schema/aws-workspaces-workspacespool.json index 1910cf46d2..a7835c68e0 100644 --- a/aws-cloudformation-schema/aws-workspaces-workspacespool.json +++ b/aws-cloudformation-schema/aws-workspaces-workspacespool.json @@ -130,11 +130,10 @@ "primaryIdentifier" : [ "/properties/PoolId" ], "createOnlyProperties" : [ "/properties/PoolName" ], "readOnlyProperties" : [ "/properties/PoolId", "/properties/PoolArn", "/properties/CreatedAt" ], - "writeOnlyProperties" : [ "/properties/Tags" ], - "deprecatedProperties" : [ "/properties/Tags/TagKey", "/properties/Tags/TagValue" ], + "deprecatedProperties" : [ "/properties/Tags", "/properties/Tags/TagKey", "/properties/Tags/TagValue" ], "handlers" : { "create" : { - "permissions" : [ "workspaces:CreateWorkspacesPool", "workspaces:DescribeWorkspacesPools", "workspaces:CreateTags" ] + "permissions" : [ "workspaces:CreateWorkspacesPool", "workspaces:DescribeWorkspacesPools" ] }, "read" : { "permissions" : [ "workspaces:DescribeWorkspacesPools" ] diff --git a/meta/.botocore.version b/meta/.botocore.version index 804a975ceb..84f4a42a0d 100644 --- a/meta/.botocore.version +++ b/meta/.botocore.version @@ -1 +1 @@ -1.35.78 +1.35.81 diff --git a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt index fd5c6b7ca9..7446619eb1 100644 --- a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt +++ b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt @@ -1,4 +1,3 @@ -AWS::Batch::JobDefinition AWS::Cognito::UserPoolDomain AWS::GameCast::Application AWS::GameCast::StreamGroup diff --git a/provider/cmd/pulumi-gen-aws-native/supported-types.txt b/provider/cmd/pulumi-gen-aws-native/supported-types.txt index 2c0adbcc64..59a3aeadcd 100644 --- a/provider/cmd/pulumi-gen-aws-native/supported-types.txt +++ b/provider/cmd/pulumi-gen-aws-native/supported-types.txt @@ -134,6 +134,7 @@ AWS::CE::AnomalySubscription AWS::CE::CostCategory AWS::Cassandra::Keyspace AWS::Cassandra::Table +AWS::Cassandra::Type AWS::CertificateManager::Account AWS::Chatbot::CustomAction AWS::Chatbot::MicrosoftTeamsChannelConfiguration @@ -693,6 +694,7 @@ AWS::Logs::MetricFilter AWS::Logs::QueryDefinition AWS::Logs::ResourcePolicy AWS::Logs::SubscriptionFilter +AWS::Logs::Transformer AWS::LookoutMetrics::Alert AWS::LookoutMetrics::AnomalyDetector AWS::LookoutVision::Project @@ -766,6 +768,7 @@ AWS::NetworkManager::ConnectPeer AWS::NetworkManager::CoreNetwork AWS::NetworkManager::CustomerGatewayAssociation AWS::NetworkManager::Device +AWS::NetworkManager::DirectConnectGatewayAttachment AWS::NetworkManager::GlobalNetwork AWS::NetworkManager::Link AWS::NetworkManager::LinkAssociation diff --git a/provider/cmd/pulumi-resource-aws-native/metadata.json b/provider/cmd/pulumi-resource-aws-native/metadata.json index 66edf51d24..db7f7bb63a 100644 --- a/provider/cmd/pulumi-resource-aws-native/metadata.json +++ b/provider/cmd/pulumi-resource-aws-native/metadata.json @@ -4661,6 +4661,10 @@ "type": "string", "description": "The application ID." }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:ConfigurationProfileDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the configuration profile." @@ -4710,6 +4714,10 @@ "type": "string", "description": "The configuration profile ID" }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:ConfigurationProfileDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the configuration profile." @@ -4773,6 +4781,9 @@ "configurationProfileId", "kmsKeyArn" ], + "writeOnly": [ + "deletionProtectionCheck" + ], "tagsProperty": "tags", "tagsStyle": "keyValueArray", "cfRef": { @@ -4899,6 +4910,10 @@ "type": "string", "description": "The application ID." }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:EnvironmentDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the environment." @@ -4928,6 +4943,10 @@ "description": "The application ID.", "replaceOnChanges": true }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:EnvironmentDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the environment." @@ -4969,6 +4988,9 @@ "readOnly": [ "environmentId" ], + "writeOnly": [ + "deletionProtectionCheck" + ], "tagsProperty": "tags", "tagsStyle": "keyValueArray", "cfRef": { @@ -12071,8 +12093,11 @@ "description": "An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` .\n\n\u003e If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead." }, "parameters": { - "$ref": "pulumi.json#/Any", - "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* .\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* ." }, "platformCapabilities": { "type": "array", @@ -12094,11 +12119,14 @@ "description": "The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority." }, "tags": { - "$ref": "pulumi.json#/Any", - "description": "The tags that are applied to the job definition.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A key-value pair to associate with a resource." }, "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout", + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", "description": "The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished." }, "type": { @@ -12107,9 +12135,6 @@ } }, "outputs": { - "awsId": { - "type": "string" - }, "containerProperties": { "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties", "description": "An object with properties specific to Amazon ECS-based jobs. When `containerProperties` is used in the job definition, it can't be used in addition to `eksProperties` , `ecsProperties` , or `nodeProperties` ." @@ -12132,8 +12157,11 @@ "description": "An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` .\n\n\u003e If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead." }, "parameters": { - "$ref": "pulumi.json#/Any", - "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* .\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* ." }, "platformCapabilities": { "type": "array", @@ -12155,11 +12183,14 @@ "description": "The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority." }, "tags": { - "$ref": "pulumi.json#/Any", - "description": "The tags that are applied to the job definition.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A key-value pair to associate with a resource." }, "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout", + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", "description": "The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished." }, "type": { @@ -12168,7 +12199,8 @@ } }, "autoNamingSpec": { - "sdkName": "jobDefinitionName" + "sdkName": "jobDefinitionName", + "maxLength": 128 }, "required": [ "type" @@ -12176,16 +12208,10 @@ "createOnly": [ "jobDefinitionName" ], - "readOnly": [ - "id" - ], - "irreversibleNames": { - "awsId": "Id" - }, "tagsProperty": "tags", - "tagsStyle": "untyped", + "tagsStyle": "stringMap", "primaryIdentifier": [ - "id" + "jobDefinitionName" ] }, "aws-native:batch:JobQueue": { @@ -13942,6 +13968,10 @@ "aws-native:cassandra:Keyspace": { "cf": "AWS::Cassandra::Keyspace", "inputs": { + "clientSideTimestampsEnabled": { + "type": "boolean", + "description": "Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again." + }, "keyspaceName": { "type": "string", "description": "Name for Cassandra keyspace" @@ -13959,6 +13989,10 @@ } }, "outputs": { + "clientSideTimestampsEnabled": { + "type": "boolean", + "description": "Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again." + }, "keyspaceName": { "type": "string", "description": "Name for Cassandra keyspace", @@ -13966,8 +14000,7 @@ }, "replicationSpecification": { "$ref": "#/types/aws-native:cassandra:KeyspaceReplicationSpecification", - "description": "Specifies the `ReplicationStrategy` of a keyspace. The options are:\n\n- `SINGLE_REGION` for a single Region keyspace (optional) or\n- `MULTI_REGION` for a multi-Region keyspace\n\nIf no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in.", - "replaceOnChanges": true + "description": "Specifies the `ReplicationStrategy` of a keyspace. The options are:\n\n- `SINGLE_REGION` for a single Region keyspace (optional) or\n- `MULTI_REGION` for a multi-Region keyspace\n\nIf no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in." }, "tags": { "type": "array", @@ -13981,8 +14014,7 @@ "sdkName": "keyspaceName" }, "createOnly": [ - "keyspaceName", - "replicationSpecification" + "keyspaceName" ], "tagsProperty": "tags", "tagsStyle": "keyValueArray", @@ -14166,6 +14198,95 @@ "tableName" ] }, + "aws-native:cassandra:Type": { + "cf": "AWS::Cassandra::Type", + "inputs": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cassandra:TypeField" + }, + "description": "Field definitions of the User-Defined Type" + }, + "keyspaceName": { + "type": "string", + "description": "Name of the Keyspace which contains the User-Defined Type." + }, + "typeName": { + "type": "string", + "description": "Name of the User-Defined Type." + } + }, + "outputs": { + "directParentTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of parent User-Defined Types that directly reference the User-Defined Type in their fields." + }, + "directReferringTables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Tables that directly reference the User-Defined Type in their columns." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cassandra:TypeField" + }, + "description": "Field definitions of the User-Defined Type", + "replaceOnChanges": true + }, + "keyspaceArn": { + "type": "string", + "description": "ARN of the Keyspace which contains the User-Defined Type." + }, + "keyspaceName": { + "type": "string", + "description": "Name of the Keyspace which contains the User-Defined Type.", + "replaceOnChanges": true + }, + "lastModifiedTimestamp": { + "type": "number", + "description": "Timestamp of the last time the User-Defined Type's meta data was modified." + }, + "maxNestingDepth": { + "type": "integer", + "description": "Maximum nesting depth of the User-Defined Type across the field types." + }, + "typeName": { + "type": "string", + "description": "Name of the User-Defined Type.", + "replaceOnChanges": true + } + }, + "autoNamingSpec": { + "sdkName": "typeName" + }, + "required": [ + "fields", + "keyspaceName" + ], + "createOnly": [ + "fields", + "keyspaceName", + "typeName" + ], + "readOnly": [ + "directParentTypes", + "directReferringTables", + "keyspaceArn", + "lastModifiedTimestamp", + "maxNestingDepth" + ], + "primaryIdentifier": [ + "keyspaceName", + "typeName" + ] + }, "aws-native:ce:AnomalyMonitor": { "cf": "AWS::CE::AnomalyMonitor", "inputs": { @@ -15186,7 +15307,17 @@ "description": "A name for the configured table." }, "tableReference": { - "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference", + "oneOf": [ + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference0Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference1Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference2Properties" + } + ], "description": "The table that this configured table represents." }, "tags": { @@ -15235,7 +15366,17 @@ "description": "A name for the configured table." }, "tableReference": { - "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference", + "oneOf": [ + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference0Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference1Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference2Properties" + } + ], "description": "The table that this configured table represents.", "replaceOnChanges": true }, @@ -16745,7 +16886,7 @@ "items": { "$ref": "#/types/aws-native:cloudformation:StackCapabilitiesItem" }, - "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html)\n- [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html)\n- [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html)\n- [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html)\n\nFor more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. \n\nFor more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) ." + "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)\n- [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)\n- [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)\n- [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)\n\nFor more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. \n\nFor more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* ." }, "description": { "type": "string", @@ -16757,7 +16898,7 @@ }, "enableTerminationProtection": { "type": "boolean", - "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack." + "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack." }, "notificationArns": { "type": "array", @@ -16775,7 +16916,7 @@ }, "roleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials." + "description": "The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials." }, "stackName": { "type": "string", @@ -16783,7 +16924,7 @@ }, "stackPolicyBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "stackPolicyUrl": { "type": "string", @@ -16802,11 +16943,11 @@ }, "templateBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "templateUrl": { "type": "string", - "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) .\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." + "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." }, "timeoutInMinutes": { "type": "integer", @@ -16819,7 +16960,7 @@ "items": { "$ref": "#/types/aws-native:cloudformation:StackCapabilitiesItem" }, - "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html)\n- [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html)\n- [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html)\n- [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html)\n\nFor more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. \n\nFor more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) ." + "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)\n- [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)\n- [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)\n- [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)\n\nFor more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. \n\nFor more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* ." }, "changeSetId": { "type": "string", @@ -16839,7 +16980,7 @@ }, "enableTerminationProtection": { "type": "boolean", - "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack." + "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack." }, "lastUpdateTime": { "type": "string", @@ -16872,7 +17013,7 @@ }, "roleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials." + "description": "The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials." }, "rootId": { "type": "string", @@ -16889,7 +17030,7 @@ }, "stackPolicyBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "stackPolicyUrl": { "type": "string", @@ -16912,11 +17053,11 @@ }, "templateBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "templateUrl": { "type": "string", - "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) .\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." + "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." }, "timeoutInMinutes": { "type": "integer", @@ -16991,7 +17132,7 @@ }, "operationPreferences": { "$ref": "#/types/aws-native:cloudformation:StackSetOperationPreferences", - "description": "The user-specified preferences for how AWS CloudFormation performs a stack set operation." + "description": "The user-specified preferences for how CloudFormation performs a stack set operation." }, "parameters": { "type": "array", @@ -17065,7 +17206,7 @@ }, "operationPreferences": { "$ref": "#/types/aws-native:cloudformation:StackSetOperationPreferences", - "description": "The user-specified preferences for how AWS CloudFormation performs a stack set operation." + "description": "The user-specified preferences for how CloudFormation performs a stack set operation." }, "parameters": { "type": "array", @@ -24036,6 +24177,10 @@ "$ref": "#/types/aws-native:connect:QueueOutboundCallerConfig", "description": "The outbound caller ID name, number, and outbound whisper flow." }, + "outboundEmailConfig": { + "$ref": "#/types/aws-native:connect:QueueOutboundEmailConfig", + "description": "The outbound email address ID." + }, "quickConnectArns": { "type": "array", "items": { @@ -24080,6 +24225,10 @@ "$ref": "#/types/aws-native:connect:QueueOutboundCallerConfig", "description": "The outbound caller ID name, number, and outbound whisper flow." }, + "outboundEmailConfig": { + "$ref": "#/types/aws-native:connect:QueueOutboundEmailConfig", + "description": "The outbound email address ID." + }, "queueArn": { "type": "string", "description": "The Amazon Resource Name (ARN) for the queue." @@ -24331,11 +24480,11 @@ "inputs": { "actions": { "$ref": "#/types/aws-native:connect:RuleActions", - "description": "The list of actions that will be executed when a rule is triggered." + "description": "A list of actions to be run when the rule is triggered." }, "function": { "type": "string", - "description": "The conditions of a rule." + "description": "The conditions of the rule." }, "instanceArn": { "type": "string", @@ -24347,28 +24496,28 @@ }, "publishStatus": { "$ref": "#/types/aws-native:connect:RulePublishStatus", - "description": "The publish status of a rule, either draft or published." + "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "One or more tags." + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }." }, "triggerEventSource": { "$ref": "#/types/aws-native:connect:RuleTriggerEventSource", - "description": "The event source that triggers the rule." + "description": "The event source to trigger the rule." } }, "outputs": { "actions": { "$ref": "#/types/aws-native:connect:RuleActions", - "description": "The list of actions that will be executed when a rule is triggered." + "description": "A list of actions to be run when the rule is triggered." }, "function": { "type": "string", - "description": "The conditions of a rule." + "description": "The conditions of the rule." }, "instanceArn": { "type": "string", @@ -24381,7 +24530,7 @@ }, "publishStatus": { "$ref": "#/types/aws-native:connect:RulePublishStatus", - "description": "The publish status of a rule, either draft or published." + "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``" }, "ruleArn": { "type": "string", @@ -24392,11 +24541,11 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "One or more tags." + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }." }, "triggerEventSource": { "$ref": "#/types/aws-native:connect:RuleTriggerEventSource", - "description": "The event source that triggers the rule.", + "description": "The event source to trigger the rule.", "replaceOnChanges": true } }, @@ -40319,6 +40468,12 @@ "aws-native:ec2:VpcEndpoint": { "cf": "AWS::EC2::VPCEndpoint", "inputs": { + "dnsOptions": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecification" + }, + "ipAddressType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointIpAddressType" + }, "policyDocument": { "$ref": "pulumi.json#/Any", "description": "An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints.\n For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section:\n ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ \"Version\":\"2012-10-17\", \"Statement\": [{ \"Effect\":\"Allow\", \"Principal\":\"*\", \"Action\":[\"logs:Describe*\",\"logs:Get*\",\"logs:List*\",\"logs:FilterLogEvents\"], \"Resource\":\"*\" }] }'``\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::EC2::VPCEndpoint` for more information about the expected schema for this property." @@ -40327,6 +40482,9 @@ "type": "boolean", "description": "Indicate whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, ``kinesis.us-east-1.amazonaws.com``), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.\n To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``.\n This property is supported only for interface endpoints.\n Default: ``false``" }, + "resourceConfigurationArn": { + "type": "string" + }, "routeTableIds": { "type": "array", "items": { @@ -40345,6 +40503,9 @@ "type": "string", "description": "The name of the endpoint service." }, + "serviceNetworkArn": { + "type": "string" + }, "subnetIds": { "type": "array", "items": { @@ -40377,6 +40538,12 @@ }, "description": "(Interface endpoints) The DNS entries for the endpoint. Each entry is a combination of the hosted zone ID and the DNS name. The entries are ordered as follows: regional public DNS, zonal public DNS, private DNS, and wildcard DNS. This order is not enforced for AWS Marketplace services.\n\nThe following is an example. In the first entry, the hosted zone ID is Z1HUB23UULQXV and the DNS name is vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com.\n\n[\"Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com\", \"Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3-us-east-1a.ec2.us-east-1.vpce.amazonaws.com\", \"Z1C12344VYDITB0:ec2.us-east-1.amazonaws.com\"]\n\nIf you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change." }, + "dnsOptions": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecification" + }, + "ipAddressType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointIpAddressType" + }, "networkInterfaceIds": { "type": "array", "items": { @@ -40392,6 +40559,10 @@ "type": "boolean", "description": "Indicate whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, ``kinesis.us-east-1.amazonaws.com``), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.\n To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``.\n This property is supported only for interface endpoints.\n Default: ``false``" }, + "resourceConfigurationArn": { + "type": "string", + "replaceOnChanges": true + }, "routeTableIds": { "type": "array", "items": { @@ -40411,6 +40582,10 @@ "description": "The name of the endpoint service.", "replaceOnChanges": true }, + "serviceNetworkArn": { + "type": "string", + "replaceOnChanges": true + }, "subnetIds": { "type": "array", "items": { @@ -40430,11 +40605,12 @@ } }, "required": [ - "serviceName", "vpcId" ], "createOnly": [ + "resourceConfigurationArn", "serviceName", + "serviceNetworkArn", "vpcEndpointType", "vpcId" ], @@ -41744,7 +41920,7 @@ "inputs": { "availabilityZoneRebalancing": { "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing", - "description": "Indicates whether to use Availability Zone rebalancing for the service.\n\nFor more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* ." + "description": "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*." }, "capacityProviderStrategy": { "type": "array", @@ -41779,7 +41955,7 @@ }, "healthCheckGracePeriodSeconds": { "type": "integer", - "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used.\n If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html).\n If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." + "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.\n If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." }, "launchType": { "$ref": "#/types/aws-native:ecs:ServiceLaunchType", @@ -41870,7 +42046,7 @@ "outputs": { "availabilityZoneRebalancing": { "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing", - "description": "Indicates whether to use Availability Zone rebalancing for the service.\n\nFor more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* ." + "description": "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*." }, "capacityProviderStrategy": { "type": "array", @@ -41907,7 +42083,7 @@ }, "healthCheckGracePeriodSeconds": { "type": "integer", - "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used.\n If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html).\n If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." + "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.\n If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." }, "launchType": { "$ref": "#/types/aws-native:ecs:ServiceLaunchType", @@ -46059,6 +46235,10 @@ }, "description": "The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation." }, + "schedulerConfiguration": { + "$ref": "#/types/aws-native:emrserverless:ApplicationSchedulerConfiguration", + "description": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above." + }, "tags": { "type": "array", "items": { @@ -46142,6 +46322,10 @@ }, "description": "The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation." }, + "schedulerConfiguration": { + "$ref": "#/types/aws-native:emrserverless:ApplicationSchedulerConfiguration", + "description": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above." + }, "tags": { "type": "array", "items": { @@ -69328,7 +69512,7 @@ "autoNamingSpec": { "sdkName": "integrationName", "minLength": 1, - "maxLength": 256 + "maxLength": 50 }, "required": [ "integrationType", @@ -69456,6 +69640,12 @@ "$ref": "pulumi.json#/Any", "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." }, + "fieldIndexPolicies": { + "type": "array", + "items": { + "$ref": "pulumi.json#/Any" + } + }, "kmsKeyId": { "type": "string", "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)" @@ -69489,6 +69679,12 @@ "$ref": "pulumi.json#/Any", "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." }, + "fieldIndexPolicies": { + "type": "array", + "items": { + "$ref": "pulumi.json#/Any" + } + }, "kmsKeyId": { "type": "string", "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)" @@ -69579,6 +69775,10 @@ "aws-native:logs:MetricFilter": { "cf": "AWS::Logs::MetricFilter", "inputs": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "filterName": { "type": "string", "description": "The name of the metric filter." @@ -69600,6 +69800,10 @@ } }, "outputs": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "filterName": { "type": "string", "description": "The name of the metric filter.", @@ -69655,6 +69859,10 @@ "type": "string", "description": "A name for the saved query definition" }, + "queryLanguage": { + "$ref": "#/types/aws-native:logs:QueryDefinitionQueryLanguage", + "description": "Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default." + }, "queryString": { "type": "string", "description": "The query string to use for this definition" @@ -69676,6 +69884,10 @@ "type": "string", "description": "Unique identifier of a query definition" }, + "queryLanguage": { + "$ref": "#/types/aws-native:logs:QueryDefinitionQueryLanguage", + "description": "Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default." + }, "queryString": { "type": "string", "description": "The query string to use for this definition" @@ -69740,6 +69952,10 @@ "aws-native:logs:SubscriptionFilter": { "cf": "AWS::Logs::SubscriptionFilter", "inputs": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "destinationArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the destination." @@ -69766,6 +69982,10 @@ } }, "outputs": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "destinationArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the destination." @@ -69810,6 +70030,46 @@ "logGroupName" ] }, + "aws-native:logs:Transformer": { + "cf": "AWS::Logs::Transformer", + "inputs": { + "logGroupIdentifier": { + "type": "string", + "description": "Existing log group that you want to associate with this transformer." + }, + "transformerConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerProcessor" + }, + "description": "List of processors in a transformer" + } + }, + "outputs": { + "logGroupIdentifier": { + "type": "string", + "description": "Existing log group that you want to associate with this transformer.", + "replaceOnChanges": true + }, + "transformerConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerProcessor" + }, + "description": "List of processors in a transformer" + } + }, + "required": [ + "logGroupIdentifier", + "transformerConfig" + ], + "createOnly": [ + "logGroupIdentifier" + ], + "primaryIdentifier": [ + "logGroupIdentifier" + ] + }, "aws-native:lookoutmetrics:Alert": { "cf": "AWS::LookoutMetrics::Alert", "inputs": { @@ -70214,6 +70474,9 @@ "type": "string", "description": "The name of the environment." }, + "networkType": { + "$ref": "#/types/aws-native:m2:EnvironmentNetworkType" + }, "preferredMaintenanceWindow": { "type": "string", "description": "Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned." @@ -70292,6 +70555,10 @@ "description": "The name of the environment.", "replaceOnChanges": true }, + "networkType": { + "$ref": "#/types/aws-native:m2:EnvironmentNetworkType", + "replaceOnChanges": true + }, "preferredMaintenanceWindow": { "type": "string", "description": "Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned." @@ -70345,6 +70612,7 @@ "engineType", "kmsKeyId", "name", + "networkType", "publiclyAccessible", "securityGroupIds", "storageConfigurations", @@ -75517,6 +75785,11 @@ "createOnly": [ "description", "kafkaClusters", + "replicationInfoList/*/sourceKafkaClusterArn", + "replicationInfoList/*/targetCompressionType", + "replicationInfoList/*/targetKafkaClusterArn", + "replicationInfoList/*/topicReplication/startingPosition", + "replicationInfoList/*/topicReplication/topicNameConfiguration", "replicatorName", "serviceExecutionRoleArn" ], @@ -77526,6 +77799,146 @@ "deviceId" ] }, + "aws-native:networkmanager:DirectConnectGatewayAttachment": { + "cf": "AWS::NetworkManager::DirectConnectGatewayAttachment", + "inputs": { + "coreNetworkId": { + "type": "string", + "description": "The ID of a core network for the Direct Connect Gateway attachment." + }, + "directConnectGatewayArn": { + "type": "string", + "description": "The ARN of the Direct Connect Gateway." + }, + "edgeLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Regions where the edges are located." + }, + "proposedNetworkFunctionGroupChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange", + "description": "The attachment to move from one network function group to another." + }, + "proposedSegmentChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange", + "description": "The attachment to move from one segment to another." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + }, + "description": "Tags for the attachment." + } + }, + "outputs": { + "attachmentId": { + "type": "string", + "description": "Id of the attachment." + }, + "attachmentPolicyRuleNumber": { + "type": "integer", + "description": "The policy rule number associated with the attachment." + }, + "attachmentType": { + "type": "string", + "description": "Attachment type." + }, + "coreNetworkArn": { + "type": "string", + "description": "The ARN of a core network for the Direct Connect Gateway attachment." + }, + "coreNetworkId": { + "type": "string", + "description": "The ID of a core network for the Direct Connect Gateway attachment.", + "replaceOnChanges": true + }, + "createdAt": { + "type": "string", + "description": "Creation time of the attachment." + }, + "directConnectGatewayArn": { + "type": "string", + "description": "The ARN of the Direct Connect Gateway.", + "replaceOnChanges": true + }, + "edgeLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Regions where the edges are located." + }, + "networkFunctionGroupName": { + "type": "string", + "description": "The name of the network function group attachment." + }, + "ownerAccountId": { + "type": "string", + "description": "Owner account of the attachment." + }, + "proposedNetworkFunctionGroupChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange", + "description": "The attachment to move from one network function group to another." + }, + "proposedSegmentChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange", + "description": "The attachment to move from one segment to another." + }, + "resourceArn": { + "type": "string", + "description": "The ARN of the Resource." + }, + "segmentName": { + "type": "string", + "description": "The name of the segment attachment.." + }, + "state": { + "type": "string", + "description": "State of the attachment." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + }, + "description": "Tags for the attachment." + }, + "updatedAt": { + "type": "string", + "description": "Last update time of the attachment." + } + }, + "required": [ + "coreNetworkId", + "directConnectGatewayArn", + "edgeLocations" + ], + "createOnly": [ + "coreNetworkId", + "directConnectGatewayArn" + ], + "readOnly": [ + "attachmentId", + "attachmentPolicyRuleNumber", + "attachmentType", + "coreNetworkArn", + "createdAt", + "networkFunctionGroupName", + "ownerAccountId", + "resourceArn", + "segmentName", + "state", + "updatedAt" + ], + "tagsProperty": "tags", + "tagsStyle": "keyValueArray", + "primaryIdentifier": [ + "attachmentId" + ] + }, "aws-native:networkmanager:GlobalNetwork": { "cf": "AWS::NetworkManager::GlobalNetwork", "inputs": { @@ -83076,7 +83489,8 @@ "description": "Configuration information about Amazon Q Apps." }, "quickSightConfiguration": { - "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration" + "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration", + "description": "The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider." }, "roleArn": { "type": "string", @@ -83160,6 +83574,7 @@ }, "quickSightConfiguration": { "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration", + "description": "The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider.", "replaceOnChanges": true }, "roleArn": { @@ -83219,22 +83634,27 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorActionConfiguration" - } + }, + "description": "A list of action configurations specifying the allowed actions and any associated filters." }, "applicationId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the Amazon Q Business application." }, "displayName": { - "type": "string" + "type": "string", + "description": "The friendly name of the data accessor." }, "principal": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags to associate with the data accessor." } }, "outputs": { @@ -83242,39 +83662,49 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorActionConfiguration" - } + }, + "description": "A list of action configurations specifying the allowed actions and any associated filters." }, "applicationId": { "type": "string", + "description": "The unique identifier of the Amazon Q Business application.", "replaceOnChanges": true }, "createdAt": { - "type": "string" + "type": "string", + "description": "The timestamp when the data accessor was created." }, "dataAccessorArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the data accessor." }, "dataAccessorId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the data accessor." }, "displayName": { - "type": "string" + "type": "string", + "description": "The friendly name of the data accessor." }, "idcApplicationArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the associated IAM Identity Center application." }, "principal": { "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor.", "replaceOnChanges": true }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags to associate with the data accessor." }, "updatedAt": { - "type": "string" + "type": "string", + "description": "The timestamp when the data accessor was last updated." } }, "required": [ @@ -83328,7 +83758,8 @@ "description": "The identifier of the index the data source is attached to." }, "mediaExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration", + "description": "The configuration for extracting information from media in documents." }, "roleArn": { "type": "string", @@ -83390,7 +83821,8 @@ "replaceOnChanges": true }, "mediaExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration", + "description": "The configuration for extracting information from media in documents." }, "roleArn": { "type": "string", @@ -83579,16 +84011,20 @@ "type": "array", "items": { "type": "string" - } + }, + "description": "The list of Amazon Q Business actions that the ISV is allowed to perform." }, "applicationId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the Amazon Q Business application." }, "principal": { - "type": "string" + "type": "string", + "description": "Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses." }, "statementId": { - "type": "string" + "type": "string", + "description": "A unique identifier for the policy statement." } }, "outputs": { @@ -83597,18 +84033,22 @@ "items": { "type": "string" }, + "description": "The list of Amazon Q Business actions that the ISV is allowed to perform.", "replaceOnChanges": true }, "applicationId": { "type": "string", + "description": "The unique identifier of the Amazon Q Business application.", "replaceOnChanges": true }, "principal": { "type": "string", + "description": "Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses.", "replaceOnChanges": true }, "statementId": { "type": "string", + "description": "A unique identifier for the policy statement.", "replaceOnChanges": true } }, @@ -83898,7 +84338,8 @@ "description": "The identifier of the Amazon Q Business web experience." }, "customizationConfiguration": { - "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration" + "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration", + "description": "Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all." }, "identityProviderConfiguration": { "oneOf": [ @@ -83957,7 +84398,8 @@ "description": "The Unix timestamp when the Amazon Q Business application was last updated." }, "customizationConfiguration": { - "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration" + "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration", + "description": "Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all." }, "defaultEndpoint": { "type": "string", @@ -84636,6 +85078,9 @@ "type": "string", "description": "\u003cp\u003eThe display name for the dataset.\u003c/p\u003e" }, + "performanceConfiguration": { + "$ref": "#/types/aws-native:quicksight:DataSetPerformanceConfiguration" + }, "permissions": { "type": "array", "items": { @@ -84762,6 +85207,9 @@ }, "description": "\u003cp\u003eThe list of columns after all transforms. These columns are available in templates,\n analyses, and dashboards.\u003c/p\u003e" }, + "performanceConfiguration": { + "$ref": "#/types/aws-native:quicksight:DataSetPerformanceConfiguration" + }, "permissions": { "type": "array", "items": { @@ -94741,9 +95189,6 @@ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", "description": "Settings that define where logs are stored." }, - "metadataTableConfiguration": { - "$ref": "#/types/aws-native:s3:BucketMetadataTableConfiguration" - }, "metricsConfigurations": { "type": "array", "items": { @@ -94854,9 +95299,6 @@ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", "description": "Settings that define where logs are stored." }, - "metadataTableConfiguration": { - "$ref": "#/types/aws-native:s3:BucketMetadataTableConfiguration" - }, "metricsConfigurations": { "type": "array", "items": { @@ -95703,22 +96145,27 @@ "cf": "AWS::S3Tables::TableBucket", "inputs": { "tableBucketName": { - "type": "string" + "type": "string", + "description": "The name for the table bucket." }, "unreferencedFileRemoval": { - "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval" + "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval", + "description": "The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) ." } }, "outputs": { "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." }, "tableBucketName": { "type": "string", + "description": "The name for the table bucket.", "replaceOnChanges": true }, "unreferencedFileRemoval": { - "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval" + "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval", + "description": "The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) ." } }, "autoNamingSpec": { @@ -95741,18 +96188,22 @@ "cf": "AWS::S3Tables::TableBucketPolicy", "inputs": { "resourcePolicy": { - "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy" + "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy", + "description": "The bucket policy JSON for the table bucket." }, "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." } }, "outputs": { "resourcePolicy": { - "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy" + "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy", + "description": "The bucket policy JSON for the table bucket." }, "tableBucketArn": { "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket.", "replaceOnChanges": true } }, @@ -107024,6 +107475,9 @@ "type": "string", "description": "The service-assigned ID of the server that is created.\n\nAn example `ServerId` is `s-01234567890abcdef` ." }, + "state": { + "$ref": "#/types/aws-native:transfer:ServerState" + }, "structuredLogDestinations": { "type": "array", "items": { @@ -107050,7 +107504,8 @@ "readOnly": [ "arn", "as2ServiceManagedEgressIpAddresses", - "serverId" + "serverId", + "state" ], "writeOnly": [ "identityProviderType" @@ -107831,22 +108286,27 @@ "cf": "AWS::VpcLattice::ResourceConfiguration", "inputs": { "allowAssociationToSharableServiceNetwork": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether the resource configuration can be associated with a sharable service network." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the resource configuration." }, "portRanges": { "type": "array", "items": { "type": "string" - } + }, + "description": "(SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30)." }, "protocolType": { - "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationProtocolType" + "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationProtocolType", + "description": "(SINGLE, GROUP) The protocol accepted by the resource configuration." }, "resourceConfigurationAuthType": { - "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationAuthType" + "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationAuthType", + "description": "The auth type for the resource configuration." }, "resourceConfigurationDefinition": { "oneOf": [ @@ -107859,49 +108319,61 @@ { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationDefinition2Properties" } - ] + ], + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported." }, "resourceConfigurationGroupId": { - "type": "string" + "type": "string", + "description": "The ID of the group resource configuration." }, "resourceConfigurationType": { - "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationType" + "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationType", + "description": "The type of resource configuration. A resource configuration can be one of the following types:\n\n- *SINGLE* - A single resource.\n- *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration.\n- *CHILD* - A single resource that is part of a group resource configuration.\n- *ARN* - An AWS resource." }, "resourceGatewayId": { - "type": "string" + "type": "string", + "description": "The ID of the resource gateway." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource configuration." } }, "outputs": { "allowAssociationToSharableServiceNetwork": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether the resource configuration can be associated with a sharable service network." }, "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource configuration." }, "awsId": { - "type": "string" + "type": "string", + "description": "The ID of the resource configuration." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the resource configuration." }, "portRanges": { "type": "array", "items": { "type": "string" - } + }, + "description": "(SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30)." }, "protocolType": { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationProtocolType", + "description": "(SINGLE, GROUP) The protocol accepted by the resource configuration.", "replaceOnChanges": true }, "resourceConfigurationAuthType": { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationAuthType", + "description": "The auth type for the resource configuration.", "replaceOnChanges": true }, "resourceConfigurationDefinition": { @@ -107915,24 +108387,29 @@ { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationDefinition2Properties" } - ] + ], + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported." }, "resourceConfigurationGroupId": { - "type": "string" + "type": "string", + "description": "The ID of the group resource configuration." }, "resourceConfigurationType": { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationType", + "description": "The type of resource configuration. A resource configuration can be one of the following types:\n\n- *SINGLE* - A single resource.\n- *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration.\n- *CHILD* - A single resource that is part of a group resource configuration.\n- *ARN* - An AWS resource.", "replaceOnChanges": true }, "resourceGatewayId": { "type": "string", + "description": "The ID of the resource gateway.", "replaceOnChanges": true }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource configuration." } }, "autoNamingSpec": { @@ -107967,10 +108444,12 @@ "cf": "AWS::VpcLattice::ResourceGateway", "inputs": { "ipAddressType": { - "$ref": "#/types/aws-native:vpclattice:ResourceGatewayIpAddressType" + "$ref": "#/types/aws-native:vpclattice:ResourceGatewayIpAddressType", + "description": "The type of IP address used by the resource gateway." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the resource gateway." }, "securityGroupIds": { "type": "array", @@ -107990,25 +108469,31 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource gateway." }, "vpcIdentifier": { - "type": "string" + "type": "string", + "description": "The ID of the VPC for the resource gateway." } }, "outputs": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource gateway." }, "awsId": { - "type": "string" + "type": "string", + "description": "The ID of the resource gateway." }, "ipAddressType": { "$ref": "#/types/aws-native:vpclattice:ResourceGatewayIpAddressType", + "description": "The type of IP address used by the resource gateway.", "replaceOnChanges": true }, "name": { "type": "string", + "description": "The name of the resource gateway.", "replaceOnChanges": true }, "securityGroupIds": { @@ -108030,10 +108515,12 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource gateway." }, "vpcIdentifier": { "type": "string", + "description": "The ID of the VPC for the resource gateway.", "replaceOnChanges": true } }, @@ -108336,7 +108823,8 @@ "description": "The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.\n\nIf you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name." }, "sharingConfig": { - "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig" + "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig", + "description": "Specify if the service network should be enabled for sharing." }, "tags": { "type": "array", @@ -108373,7 +108861,8 @@ "replaceOnChanges": true }, "sharingConfig": { - "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig" + "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig", + "description": "Specify if the service network should be enabled for sharing." }, "tags": { "type": "array", @@ -108413,38 +108902,46 @@ "cf": "AWS::VpcLattice::ServiceNetworkResourceAssociation", "inputs": { "resourceConfigurationId": { - "type": "string" + "type": "string", + "description": "The ID of the resource configuration associated with the service network." }, "serviceNetworkId": { - "type": "string" + "type": "string", + "description": "The ID of the service network associated with the resource configuration." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "A key-value pair to associate with a resource." } }, "outputs": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the association." }, "awsId": { - "type": "string" + "type": "string", + "description": "The ID of the association between the service network and resource configuration." }, "resourceConfigurationId": { "type": "string", + "description": "The ID of the resource configuration associated with the service network.", "replaceOnChanges": true }, "serviceNetworkId": { "type": "string", + "description": "The ID of the service network associated with the resource configuration.", "replaceOnChanges": true }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "A key-value pair to associate with a resource." } }, "createOnly": [ @@ -109830,35 +110327,44 @@ "cf": "AWS::Wisdom::AIGuardrailVersion", "inputs": { "aiGuardrailId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version." }, "assistantId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version assistant." }, "modifiedTimeSeconds": { - "type": "number" + "type": "number", + "description": "The modified time of the AI guardrail version in seconds." } }, "outputs": { "aiGuardrailArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI guardrail version." }, "aiGuardrailId": { "type": "string", + "description": "The ID of the AI guardrail version.", "replaceOnChanges": true }, "aiGuardrailVersionId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version." }, "assistantArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI guardrail version assistant." }, "assistantId": { "type": "string", + "description": "The ID of the AI guardrail version assistant.", "replaceOnChanges": true }, "modifiedTimeSeconds": { "type": "number", + "description": "The modified time of the AI guardrail version in seconds.", "replaceOnChanges": true }, "versionNumber": { @@ -110050,7 +110556,8 @@ }, "outputs": { "aiPromptArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI prompt." }, "aiPromptId": { "type": "string", @@ -110684,8 +111191,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - }, - "description": "The tags for the pool." + } }, "timeoutSettings": { "$ref": "#/types/aws-native:workspaces:WorkspacesPoolTimeoutSettings", @@ -110734,8 +111240,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - }, - "description": "The tags for the pool." + } }, "timeoutSettings": { "$ref": "#/types/aws-native:workspaces:WorkspacesPoolTimeoutSettings", @@ -110758,9 +111263,6 @@ "poolArn", "poolId" ], - "writeOnly": [ - "tags" - ], "tagsProperty": "tags", "tagsStyle": "keyValueArray", "primaryIdentifier": [ @@ -114779,6 +115281,9 @@ } } }, + "aws-native:appconfig:ConfigurationProfileDeletionProtectionCheck": { + "type": "string" + }, "aws-native:appconfig:ConfigurationProfileTags": { "type": "object", "properties": { @@ -114824,6 +115329,9 @@ } } }, + "aws-native:appconfig:EnvironmentDeletionProtectionCheck": { + "type": "string" + }, "aws-native:appconfig:EnvironmentMonitor": { "type": "object", "properties": { @@ -120024,7 +120532,7 @@ "properties": { "capacityDistributionStrategy": { "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy", - "description": "If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` .\n\n- `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n- `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead." + "description": "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead." } } }, @@ -120036,11 +120544,11 @@ "properties": { "impairedZoneHealthCheckBehavior": { "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior", - "description": "Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* ." + "description": "Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*." }, "zonalShiftEnabled": { "type": "boolean", - "description": "If `true` , enable zonal shift for your Auto Scaling group." + "description": "If ``true``, enable zonal shift for your Auto Scaling group." } } }, @@ -122067,19 +122575,6 @@ } } }, - "aws-native:batch:JobDefinitionAuthorizationConfig": { - "type": "object", - "properties": { - "accessPointId": { - "type": "string", - "description": "The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* ." - }, - "iam": { - "type": "string", - "description": "Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified." - } - } - }, "aws-native:batch:JobDefinitionContainerProperties": { "type": "object", "properties": { @@ -122106,17 +122601,13 @@ "description": "The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see [AWS Batch execution IAM role](https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) in the *AWS Batch User Guide* ." }, "fargatePlatformConfiguration": { - "$ref": "#/types/aws-native:batch:JobDefinitionFargatePlatformConfiguration", + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties", "description": "The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter." }, "image": { "type": "string", "description": "Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) .\n\n\u003e Docker image architecture must match the processor architecture of the compute resources that they're scheduled on. For example, ARM-based Docker images can only run on ARM-based compute resources. \n\n- Images in Amazon ECR Public repositories use the full `registry/repository[:tag]` or `registry/repository[@digest]` naming conventions. For example, `public.ecr.aws/ *registry_alias* / *my-web-app* : *latest*` .\n- Images in Amazon ECR repositories use the full registry and repository URI (for example, `123456789012.dkr.ecr.\u003cregion-name\u003e.amazonaws.com/\u003crepository-name\u003e` ).\n- Images in official repositories on Docker Hub use a single name (for example, `ubuntu` or `mongo` ).\n- Images in other repositories on Docker Hub are qualified with an organization name (for example, `amazon/amazon-ecs-agent` ).\n- Images in other online repositories are qualified further by a domain name (for example, `quay.io/assemblyline/ubuntu` )." }, - "instanceType": { - "type": "string", - "description": "The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type.\n\n\u003e This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided." - }, "jobRoleArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* ." @@ -122136,7 +122627,7 @@ "mountPoints": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionMountPoints" + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" }, "description": "The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) ." }, @@ -122192,12 +122683,20 @@ "volumes": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumes" + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" }, "description": "A list of data volumes used in a job." } } }, + "aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties": { + "type": "object", + "properties": { + "platformVersion": { + "type": "string" + } + } + }, "aws-native:batch:JobDefinitionDevice": { "type": "object", "properties": { @@ -122275,17 +122774,30 @@ "volumes": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumes" + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" }, "description": "A list of volumes that are associated with the job." } } }, + "aws-native:batch:JobDefinitionEfsAuthorizationConfig": { + "type": "object", + "properties": { + "accessPointId": { + "type": "string", + "description": "The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* ." + }, + "iam": { + "type": "string", + "description": "Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified." + } + } + }, "aws-native:batch:JobDefinitionEfsVolumeConfiguration": { "type": "object", "properties": { "authorizationConfig": { - "$ref": "#/types/aws-native:batch:JobDefinitionAuthorizationConfig", + "$ref": "#/types/aws-native:batch:JobDefinitionEfsAuthorizationConfig", "description": "The authorization configuration details for the Amazon EFS file system." }, "fileSystemId": { @@ -122376,11 +122888,17 @@ "type": "object", "properties": { "limits": { - "$ref": "pulumi.json#/Any", + "type": "object", + "additionalProperties": { + "type": "string" + }, "description": "The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects.\n\n- **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a \"Mi\" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` .\n\n\u003e To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* .\n- **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` .\n- **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` ." }, "requests": { - "$ref": "pulumi.json#/Any", + "type": "object", + "additionalProperties": { + "type": "string" + }, "description": "The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects.\n\n- **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a \"Mi\" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` .\n\n\u003e If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* .\n- **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` .\n- **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` ." } } @@ -122453,11 +122971,76 @@ } } }, + "aws-native:batch:JobDefinitionEksMetadata": { + "type": "object", + "properties": { + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object." + } + } + }, + "aws-native:batch:JobDefinitionEksPodProperties": { + "type": "object", + "properties": { + "containers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" + }, + "description": "The properties of the container that's used on the Amazon EKS pod.\n\n\u003e This object is limited to 10 elements." + }, + "dnsPolicy": { + "type": "string", + "description": "The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* .\n\nValid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet`" + }, + "hostNetwork": { + "type": "boolean", + "description": "Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* ." + }, + "imagePullSecrets": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionImagePullSecret" + }, + "description": "References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry.\n\n`ImagePullSecret$name` is required when this object is used." + }, + "initContainers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" + }, + "description": "These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* .\n\n\u003e This object is limited to 10 elements." + }, + "metadata": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksMetadata", + "description": "Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* ." + }, + "serviceAccountName": { + "type": "string", + "description": "The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* ." + }, + "shareProcessNamespace": { + "type": "boolean", + "description": "Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) ." + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" + }, + "description": "Specifies the volumes for a job definition that uses Amazon EKS resources." + } + } + }, "aws-native:batch:JobDefinitionEksProperties": { "type": "object", "properties": { "podProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionPodProperties", + "$ref": "#/types/aws-native:batch:JobDefinitionEksPodProperties", "description": "The properties for the Kubernetes pod resources of a job." } } @@ -122539,12 +123122,12 @@ } } }, - "aws-native:batch:JobDefinitionFargatePlatformConfiguration": { + "aws-native:batch:JobDefinitionHost": { "type": "object", "properties": { - "platformVersion": { + "sourcePath": { "type": "string", - "description": "The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* ." + "description": "The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.\n\n\u003e This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs." } } }, @@ -122557,6 +123140,15 @@ } } }, + "aws-native:batch:JobDefinitionJobTimeout": { + "type": "object", + "properties": { + "attemptDurationSeconds": { + "type": "integer", + "description": "The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds.\n\nFor array jobs, the timeout applies to the child jobs, not to the parent array job.\n\nFor multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes." + } + } + }, "aws-native:batch:JobDefinitionLinuxParameters": { "type": "object", "properties": { @@ -122600,7 +123192,10 @@ "description": "The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default.\n\nThe supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` .\n\n\u003e Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. \n\n- **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation.\n- **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* .\n- **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* .\n- **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* .\n- **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* .\n- **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* .\n- **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* .\n\n\u003e If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. \n\nThis parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep \"Server API version\"`" }, "options": { - "$ref": "pulumi.json#/Any", + "type": "object", + "additionalProperties": { + "type": "string" + }, "description": "The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep \"Server API version\"`" }, "secretOptions": { @@ -122612,16 +123207,7 @@ } } }, - "aws-native:batch:JobDefinitionMetadata": { - "type": "object", - "properties": { - "labels": { - "$ref": "pulumi.json#/Any", - "description": "Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object." - } - } - }, - "aws-native:batch:JobDefinitionMountPoints": { + "aws-native:batch:JobDefinitionMountPoint": { "type": "object", "properties": { "containerPath": { @@ -122638,6 +123224,135 @@ } } }, + "aws-native:batch:JobDefinitionMultiNodeContainerProperties": { + "type": "object", + "properties": { + "command": { + "type": "array", + "items": { + "type": "string" + } + }, + "environment": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEnvironment" + } + }, + "ephemeralStorage": { + "$ref": "#/types/aws-native:batch:JobDefinitionEphemeralStorage" + }, + "executionRoleArn": { + "type": "string" + }, + "image": { + "type": "string" + }, + "instanceType": { + "type": "string" + }, + "jobRoleArn": { + "type": "string" + }, + "linuxParameters": { + "$ref": "#/types/aws-native:batch:JobDefinitionLinuxParameters" + }, + "logConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionLogConfiguration" + }, + "memory": { + "type": "integer" + }, + "mountPoints": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" + } + }, + "privileged": { + "type": "boolean" + }, + "readonlyRootFilesystem": { + "type": "boolean" + }, + "repositoryCredentials": { + "$ref": "#/types/aws-native:batch:JobDefinitionRepositoryCredentials" + }, + "resourceRequirements": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionResourceRequirement" + } + }, + "runtimePlatform": { + "$ref": "#/types/aws-native:batch:JobDefinitionRuntimePlatform" + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionSecret" + } + }, + "ulimits": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionUlimit" + } + }, + "user": { + "type": "string" + }, + "vcpus": { + "type": "integer" + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" + } + } + } + }, + "aws-native:batch:JobDefinitionMultiNodeEcsProperties": { + "type": "object", + "properties": { + "taskProperties": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionMultiNodeEcsTaskProperties" + } + } + } + }, + "aws-native:batch:JobDefinitionMultiNodeEcsTaskProperties": { + "type": "object", + "properties": { + "containers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionTaskContainerProperties" + } + }, + "executionRoleArn": { + "type": "string" + }, + "ipcMode": { + "type": "string" + }, + "pidMode": { + "type": "string" + }, + "taskRoleArn": { + "type": "string" + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" + } + } + } + }, "aws-native:batch:JobDefinitionNetworkConfiguration": { "type": "object", "properties": { @@ -122671,11 +123386,11 @@ "type": "object", "properties": { "container": { - "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties", + "$ref": "#/types/aws-native:batch:JobDefinitionMultiNodeContainerProperties", "description": "The container details for the node range." }, "ecsProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionEcsProperties", + "$ref": "#/types/aws-native:batch:JobDefinitionMultiNodeEcsProperties", "description": "This is an object that represents the properties of the node range for a multi-node parallel job." }, "eksProperties": { @@ -122695,58 +123410,6 @@ } } }, - "aws-native:batch:JobDefinitionPodProperties": { - "type": "object", - "properties": { - "containers": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" - }, - "description": "The properties of the container that's used on the Amazon EKS pod.\n\n\u003e This object is limited to 10 elements." - }, - "dnsPolicy": { - "type": "string", - "description": "The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* .\n\nValid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet`" - }, - "hostNetwork": { - "type": "boolean", - "description": "Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* ." - }, - "imagePullSecrets": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionImagePullSecret" - } - }, - "initContainers": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" - }, - "description": "These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* .\n\n\u003e This object is limited to 10 elements." - }, - "metadata": { - "$ref": "#/types/aws-native:batch:JobDefinitionMetadata", - "description": "Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* ." - }, - "serviceAccountName": { - "type": "string", - "description": "The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* ." - }, - "shareProcessNamespace": { - "type": "boolean", - "description": "Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) ." - }, - "volumes": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" - }, - "description": "Specifies the volumes for a job definition that uses Amazon EKS resources." - } - } - }, "aws-native:batch:JobDefinitionRepositoryCredentials": { "type": "object", "properties": { @@ -122867,7 +123530,7 @@ "mountPoints": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionMountPoints" + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" }, "description": "The mount points for data volumes in your container.\n\nThis parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the [--volume](https://docs.aws.amazon.com/) option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\nWindows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives." }, @@ -122914,15 +123577,6 @@ } } }, - "aws-native:batch:JobDefinitionTimeout": { - "type": "object", - "properties": { - "attemptDurationSeconds": { - "type": "integer", - "description": "The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds.\n\nFor array jobs, the timeout applies to the child jobs, not to the parent array job.\n\nFor multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes." - } - } - }, "aws-native:batch:JobDefinitionTmpfs": { "type": "object", "properties": { @@ -122960,15 +123614,15 @@ } } }, - "aws-native:batch:JobDefinitionVolumes": { + "aws-native:batch:JobDefinitionVolume": { "type": "object", "properties": { "efsVolumeConfiguration": { "$ref": "#/types/aws-native:batch:JobDefinitionEfsVolumeConfiguration", - "description": "This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* ." + "description": "This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` ." }, "host": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumesHost", + "$ref": "#/types/aws-native:batch:JobDefinitionHost", "description": "The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running.\n\n\u003e This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided." }, "name": { @@ -122977,15 +123631,6 @@ } } }, - "aws-native:batch:JobDefinitionVolumesHost": { - "type": "object", - "properties": { - "sourcePath": { - "type": "string", - "description": "The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.\n\n\u003e This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs." - } - } - }, "aws-native:batch:JobQueueComputeEnvironmentOrder": { "type": "object", "properties": { @@ -126295,6 +126940,17 @@ } } }, + "aws-native:cassandra:TypeField": { + "type": "object", + "properties": { + "fieldName": { + "type": "string" + }, + "fieldType": { + "type": "string" + } + } + }, "aws-native:ce:AnomalyMonitorMonitorDimension": { "type": "string" }, @@ -126936,6 +127592,23 @@ } } }, + "aws-native:cleanrooms:ConfiguredTableAthenaTableReference": { + "type": "object", + "properties": { + "databaseName": { + "type": "string" + }, + "outputLocation": { + "type": "string" + }, + "tableName": { + "type": "string" + }, + "workGroup": { + "type": "string" + } + } + }, "aws-native:cleanrooms:ConfiguredTableDifferentialPrivacy": { "type": "object", "properties": { @@ -126959,12 +127632,10 @@ "type": "object", "properties": { "databaseName": { - "type": "string", - "description": "The name of the database the AWS Glue table belongs to." + "type": "string" }, "tableName": { - "type": "string", - "description": "The name of the AWS Glue table." + "type": "string" } } }, @@ -126977,12 +127648,89 @@ "aws-native:cleanrooms:ConfiguredTableScalarFunctions": { "type": "string" }, - "aws-native:cleanrooms:ConfiguredTableTableReference": { + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableReference": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "schemaName": { + "type": "string" + }, + "secretArn": { + "type": "string" + }, + "tableName": { + "type": "string" + }, + "tableSchema": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaProperties" + } + } + }, + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchema0Properties": { + "type": "object", + "properties": { + "v1": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaV1" + } + } + }, + "irreversibleNames": { + "v1": "V1" + } + }, + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaProperties": { + "type": "object", + "properties": { + "v1": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaV1" + } + } + }, + "irreversibleNames": { + "v1": "V1" + } + }, + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaV1": { + "type": "object", + "properties": { + "columnName": { + "type": "string" + }, + "columnType": { + "type": "string" + } + } + }, + "aws-native:cleanrooms:ConfiguredTableTableReference0Properties": { "type": "object", "properties": { "glue": { - "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableGlueTableReference", - "description": "If present, a reference to the AWS Glue table referred to by this table reference." + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableGlueTableReference" + } + } + }, + "aws-native:cleanrooms:ConfiguredTableTableReference1Properties": { + "type": "object", + "properties": { + "snowflake": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableReference" + } + } + }, + "aws-native:cleanrooms:ConfiguredTableTableReference2Properties": { + "type": "object", + "properties": { + "athena": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableAthenaTableReference" } } }, @@ -127603,11 +128351,11 @@ }, "failureToleranceCount": { "type": "integer", - "description": "The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both)." + "description": "The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both)." }, "failureTolerancePercentage": { "type": "integer", - "description": "The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nWhen calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both." + "description": "The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nWhen calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both." }, "maxConcurrentCount": { "type": "integer", @@ -127615,7 +128363,7 @@ }, "maxConcurrentPercentage": { "type": "integer", - "description": "The maximum percentage of accounts in which to perform this operation at one time.\n\nWhen calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.\n\nNote that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.\n\nConditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both." + "description": "The maximum percentage of accounts in which to perform this operation at one time.\n\nWhen calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.\n\nNote that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.\n\nConditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both." }, "regionConcurrencyType": { "$ref": "#/types/aws-native:cloudformation:StackSetRegionConcurrencyType", @@ -128038,6 +128786,10 @@ }, "description": "A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior." }, + "grpcConfig": { + "$ref": "#/types/aws-native:cloudfront:DistributionGrpcConfig", + "description": "The gRPC configuration for your cache behavior." + }, "lambdaFunctionAssociations": { "type": "array", "items": { @@ -128333,6 +129085,10 @@ }, "description": "A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior." }, + "grpcConfig": { + "$ref": "#/types/aws-native:cloudfront:DistributionGrpcConfig", + "description": "The gRPC configuration for your cache behavior." + }, "lambdaFunctionAssociations": { "type": "array", "items": { @@ -128452,6 +129208,15 @@ } } }, + "aws-native:cloudfront:DistributionGrpcConfig": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins." + } + } + }, "aws-native:cloudfront:DistributionLambdaFunctionAssociation": { "type": "object", "properties": { @@ -128617,6 +129382,10 @@ "members": { "$ref": "#/types/aws-native:cloudfront:DistributionOriginGroupMembers", "description": "A complex type that contains information about the origins in an origin group." + }, + "selectionCriteria": { + "$ref": "#/types/aws-native:cloudfront:DistributionOriginGroupSelectionCriteria", + "description": "The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* ." } } }, @@ -128654,6 +129423,9 @@ } } }, + "aws-native:cloudfront:DistributionOriginGroupSelectionCriteria": { + "type": "string" + }, "aws-native:cloudfront:DistributionOriginGroups": { "type": "object", "properties": { @@ -132595,13 +133367,16 @@ "type": "object", "properties": { "effectiveFrom": { - "type": "string" + "type": "string", + "description": "The date from which the hours of operation override would be effective." }, "effectiveTill": { - "type": "string" + "type": "string", + "description": "The date till which the hours of operation override would be effective." }, "hoursOfOperationOverrideId": { - "type": "string" + "type": "string", + "description": "The identifier for the hours of operation override." }, "overrideConfig": { "type": "array", @@ -132844,6 +133619,15 @@ } } }, + "aws-native:connect:QueueOutboundEmailConfig": { + "type": "object", + "properties": { + "outboundEmailAddressId": { + "type": "string", + "description": "The identifier of the email address." + } + } + }, "aws-native:connect:QueueStatus": { "type": "string" }, @@ -133021,7 +133805,7 @@ "items": { "$ref": "#/types/aws-native:connect:RuleAssignContactCategoryAction" }, - "description": "Information about the contact category action. The syntax can be empty, for example, `{}` ." + "description": "Information about the contact category action. The syntax can be empty, for example, ``{}``." }, "createCaseActions": { "type": "array", @@ -133040,7 +133824,7 @@ "items": { "$ref": "#/types/aws-native:connect:RuleEventBridgeAction" }, - "description": "Information about the EventBridge action." + "description": "Information about the EV action." }, "sendNotificationActions": { "type": "array", @@ -133060,7 +133844,7 @@ "items": { "$ref": "#/types/aws-native:connect:RuleTaskAction" }, - "description": "Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate`" + "description": "Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``" }, "updateCaseActions": { "type": "array", @@ -133083,8 +133867,7 @@ } }, "templateId": { - "type": "string", - "description": "The Id of template." + "type": "string" } } }, @@ -133096,7 +133879,7 @@ "properties": { "name": { "type": "string", - "description": "The name of the event bridge action." + "description": "The name." } } }, @@ -133104,8 +133887,7 @@ "type": "object", "properties": { "id": { - "type": "string", - "description": "The Id of the field" + "type": "string" }, "value": { "$ref": "#/types/aws-native:connect:RuleFieldValue" @@ -133137,14 +133919,14 @@ "items": { "type": "string" }, - "description": "The list of recipients by user arns." + "description": "The Amazon Resource Name (ARN) of the user account." }, "userTags": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "The collection of recipients who are identified by user tags" + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }. CON users with the specified tags will be notified." } } }, @@ -133155,10 +133937,12 @@ "type": "object", "properties": { "type": { - "$ref": "#/types/aws-native:connect:RuleReferenceType" + "$ref": "#/types/aws-native:connect:RuleReferenceType", + "description": "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``" }, "value": { - "type": "string" + "type": "string", + "description": "A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP)." } } }, @@ -133170,22 +133954,23 @@ "properties": { "content": { "type": "string", - "description": "The content of notification." + "description": "Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." }, "contentType": { "$ref": "#/types/aws-native:connect:RuleSendNotificationActionContentType", - "description": "The type of content." + "description": "Content type format.\n *Allowed value*: ``PLAIN_TEXT``" }, "deliveryMethod": { "$ref": "#/types/aws-native:connect:RuleSendNotificationActionDeliveryMethod", - "description": "The means of delivery." + "description": "Notification delivery method.\n *Allowed value*: ``EMAIL``" }, "recipient": { - "$ref": "#/types/aws-native:connect:RuleNotificationRecipientType" + "$ref": "#/types/aws-native:connect:RuleNotificationRecipientType", + "description": "Notification recipient." }, "subject": { "type": "string", - "description": "The subject of notification." + "description": "The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." } } }, @@ -133199,8 +133984,7 @@ "type": "object", "properties": { "evaluationFormArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the evaluation form." + "type": "string" } } }, @@ -133209,11 +133993,11 @@ "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": "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's 1 to 256 characters in length." + "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 -" } } }, @@ -133222,22 +134006,22 @@ "properties": { "contactFlowArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the contact flow." + "description": "The Amazon Resource Name (ARN) of the flow." }, "description": { "type": "string", - "description": "The description which appears in the agent's Contact Control Panel (CCP)." + "description": "The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." }, "name": { "type": "string", - "description": "The name which appears in the agent's Contact Control Panel (CCP)." + "description": "The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." }, "references": { "type": "object", "additionalProperties": { "$ref": "#/types/aws-native:connect:RuleReference" }, - "description": "A formatted URL that is shown to an agent in the Contact Control Panel (CCP)." + "description": "Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.)" } } }, @@ -133246,11 +134030,11 @@ "properties": { "eventSourceName": { "$ref": "#/types/aws-native:connect:RuleTriggerEventSourceEventSourceName", - "description": "The name of event source." + "description": "The name of the event source." }, "integrationAssociationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) for the AppIntegration association." + "description": "The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``" } } }, @@ -133532,11 +134316,11 @@ }, "firstName": { "type": "string", - "description": "The first name. This is required if you are using Amazon Connect or SAML for identity management." + "description": "The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted." }, "lastName": { "type": "string", - "description": "The last name. This is required if you are using Amazon Connect or SAML for identity management." + "description": "The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted." }, "mobile": { "type": "string", @@ -133878,6 +134662,15 @@ } } }, + "aws-native:connectcampaignsv2:CampaignEventTrigger": { + "type": "object", + "properties": { + "customerProfilesDomainArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the Customer Profiles domain." + } + } + }, "aws-native:connectcampaignsv2:CampaignLocalTimeZoneConfig": { "type": "object", "properties": { @@ -134016,6 +134809,10 @@ "customerProfilesSegmentArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the Customer Profiles segment." + }, + "eventTrigger": { + "$ref": "#/types/aws-native:connectcampaignsv2:CampaignEventTrigger", + "description": "The event trigger of the campaign." } } }, @@ -140898,7 +141695,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:ec2:LaunchTemplateReference" - } + }, + "description": "The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences." } } }, @@ -141045,6 +141843,9 @@ }, "description": "The network interfaces for the instance." }, + "networkPerformanceOptions": { + "$ref": "pulumi.json#/Any" + }, "placement": { "$ref": "#/types/aws-native:ec2:LaunchTemplatePlacement", "description": "The placement for the instance." @@ -144202,6 +145003,26 @@ "aws-native:ec2:VpcBlockPublicAccessOptionsInternetGatewayBlockMode": { "type": "string" }, + "aws-native:ec2:VpcEndpointDnsOptionsSpecification": { + "type": "object", + "properties": { + "dnsRecordIpType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecificationDnsRecordIpType" + }, + "privateDnsOnlyForInboundResolverEndpoint": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint" + } + } + }, + "aws-native:ec2:VpcEndpointDnsOptionsSpecificationDnsRecordIpType": { + "type": "string" + }, + "aws-native:ec2:VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint": { + "type": "string" + }, + "aws-native:ec2:VpcEndpointIpAddressType": { + "type": "string" + }, "aws-native:ec2:VpcEndpointType": { "type": "string" }, @@ -144863,7 +145684,7 @@ "properties": { "assignPublicIp": { "$ref": "#/types/aws-native:ecs:ServiceAwsVpcConfigurationAssignPublicIp", - "description": "Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``." + "description": "Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``." }, "securityGroups": { "type": "array", @@ -145308,11 +146129,11 @@ "properties": { "portName": { "type": "string", - "description": "The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition." + "description": "The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition." }, "roleArn": { "type": "string", - "description": "The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure." + "description": "The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS\n infrastructure IAM role that is used to manage your VPC Lattice infrastructure." }, "targetGroupArn": { "type": "string", @@ -145682,7 +146503,7 @@ "properties": { "sizeInGiB": { "type": "integer", - "description": "The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB." + "description": "The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB." } } }, @@ -148475,6 +149296,19 @@ } } }, + "aws-native:emrserverless:ApplicationSchedulerConfiguration": { + "type": "object", + "properties": { + "maxConcurrentRuns": { + "type": "integer", + "description": "The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000." + }, + "queueTimeoutMinutes": { + "type": "integer", + "description": "The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720." + } + } + }, "aws-native:emrserverless:ApplicationTag": { "type": "object", "properties": { @@ -149618,11 +150452,11 @@ "properties": { "name": { "type": "string", - "description": "Name of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Name of parameter to start execution of a SageMaker AI Model Building Pipeline." }, "value": { "type": "string", - "description": "Value of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Value of parameter to start execution of a SageMaker AI Model Building Pipeline." } } }, @@ -149634,7 +150468,7 @@ "items": { "$ref": "#/types/aws-native:events:RuleSageMakerPipelineParameter" }, - "description": "List of Parameter names and values for SageMaker Model Building Pipeline execution." + "description": "List of Parameter names and values for SageMaker AI Model Building Pipeline execution." } } }, @@ -149728,7 +150562,7 @@ }, "sageMakerPipelineParameters": { "$ref": "#/types/aws-native:events:RuleSageMakerPipelineParameters", - "description": "Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline.\n\nIf you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events." + "description": "Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline.\n\nIf you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events." }, "sqsParameters": { "$ref": "#/types/aws-native:events:RuleSqsParameters", @@ -169572,6 +170406,9 @@ "aws-native:logs:MetricFilterMetricTransformationUnit": { "type": "string" }, + "aws-native:logs:QueryDefinitionQueryLanguage": { + "type": "string" + }, "aws-native:logs:ResourceConfigProperties": { "type": "object", "properties": { @@ -169584,6 +170421,492 @@ "aws-native:logs:SubscriptionFilterDistribution": { "type": "string" }, + "aws-native:logs:TransformerAddKeyEntry": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The key of the new entry to be added to the log event" + }, + "overwriteIfExists": { + "type": "boolean", + "description": "Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` ." + }, + "value": { + "type": "string", + "description": "The value of the new entry to be added to the log event" + } + } + }, + "aws-native:logs:TransformerCopyValueEntry": { + "type": "object", + "properties": { + "overwriteIfExists": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "target": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerMoveKeyEntry": { + "type": "object", + "properties": { + "overwriteIfExists": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "target": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerParseCloudfront": { + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + } + }, + "aws-native:logs:TransformerParsePostgres": { + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + } + }, + "aws-native:logs:TransformerParseRoute53": { + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + } + }, + "aws-native:logs:TransformerParseVpc": { + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + } + }, + "aws-native:logs:TransformerParseWaf": { + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + } + }, + "aws-native:logs:TransformerProcessor": { + "type": "object", + "properties": { + "addKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorAddKeysProperties", + "description": "Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer." + }, + "copyValue": { + "$ref": "#/types/aws-native:logs:TransformerProcessorCopyValueProperties", + "description": "Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer." + }, + "csv": { + "$ref": "#/types/aws-native:logs:TransformerProcessorCsvProperties", + "description": "Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer." + }, + "dateTimeConverter": { + "$ref": "#/types/aws-native:logs:TransformerProcessorDateTimeConverterProperties", + "description": "Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer." + }, + "deleteKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorDeleteKeysProperties", + "description": "Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer." + }, + "grok": { + "$ref": "#/types/aws-native:logs:TransformerProcessorGrokProperties", + "description": "Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer." + }, + "listToMap": { + "$ref": "#/types/aws-native:logs:TransformerProcessorListToMapProperties", + "description": "Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer." + }, + "lowerCaseString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorLowerCaseStringProperties", + "description": "Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer." + }, + "moveKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorMoveKeysProperties", + "description": "Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer." + }, + "parseCloudfront": { + "$ref": "#/types/aws-native:logs:TransformerParseCloudfront", + "description": "Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseJson": { + "$ref": "#/types/aws-native:logs:TransformerProcessorParseJsonProperties", + "description": "Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer." + }, + "parseKeyValue": { + "$ref": "#/types/aws-native:logs:TransformerProcessorParseKeyValueProperties", + "description": "Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer." + }, + "parsePostgres": { + "$ref": "#/types/aws-native:logs:TransformerParsePostgres", + "description": "Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseRoute53": { + "$ref": "#/types/aws-native:logs:TransformerParseRoute53", + "description": "Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseVpc": { + "$ref": "#/types/aws-native:logs:TransformerParseVpc", + "description": "Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseWaf": { + "$ref": "#/types/aws-native:logs:TransformerParseWaf", + "description": "Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "renameKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorRenameKeysProperties", + "description": "Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer." + }, + "splitString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorSplitStringProperties", + "description": "Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer." + }, + "substituteString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorSubstituteStringProperties", + "description": "Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer." + }, + "trimString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorTrimStringProperties", + "description": "Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer." + }, + "typeConverter": { + "$ref": "#/types/aws-native:logs:TransformerProcessorTypeConverterProperties", + "description": "Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer." + }, + "upperCaseString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorUpperCaseStringProperties", + "description": "Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer." + } + }, + "irreversibleNames": { + "parseJson": "ParseJSON", + "parseRoute53": "ParseRoute53", + "parseVpc": "ParseVPC", + "parseWaf": "ParseWAF" + } + }, + "aws-native:logs:TransformerProcessorAddKeysProperties": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerAddKeyEntry" + } + } + } + }, + "aws-native:logs:TransformerProcessorCopyValueProperties": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerCopyValueEntry" + } + } + } + }, + "aws-native:logs:TransformerProcessorCsvProperties": { + "type": "object", + "properties": { + "columns": { + "type": "array", + "items": { + "type": "string" + } + }, + "delimiter": { + "type": "string" + }, + "quoteCharacter": { + "type": "string" + }, + "source": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerProcessorDateTimeConverterProperties": { + "type": "object", + "properties": { + "locale": { + "type": "string" + }, + "matchPatterns": { + "type": "array", + "items": { + "type": "string" + } + }, + "source": { + "type": "string" + }, + "sourceTimezone": { + "type": "string" + }, + "target": { + "type": "string" + }, + "targetFormat": { + "type": "string" + }, + "targetTimezone": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerProcessorDeleteKeysProperties": { + "type": "object", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "aws-native:logs:TransformerProcessorGrokProperties": { + "type": "object", + "properties": { + "match": { + "type": "string" + }, + "source": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerProcessorListToMapProperties": { + "type": "object", + "properties": { + "flatten": { + "type": "boolean" + }, + "flattenedElement": { + "$ref": "#/types/aws-native:logs:TransformerProcessorListToMapPropertiesFlattenedElement" + }, + "key": { + "type": "string" + }, + "source": { + "type": "string" + }, + "target": { + "type": "string" + }, + "valueKey": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerProcessorListToMapPropertiesFlattenedElement": { + "type": "string" + }, + "aws-native:logs:TransformerProcessorLowerCaseStringProperties": { + "type": "object", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "aws-native:logs:TransformerProcessorMoveKeysProperties": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerMoveKeyEntry" + } + } + } + }, + "aws-native:logs:TransformerProcessorParseJsonProperties": { + "type": "object", + "properties": { + "destination": { + "type": "string" + }, + "source": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerProcessorParseKeyValueProperties": { + "type": "object", + "properties": { + "destination": { + "type": "string" + }, + "fieldDelimiter": { + "type": "string" + }, + "keyPrefix": { + "type": "string" + }, + "keyValueDelimiter": { + "type": "string" + }, + "nonMatchValue": { + "type": "string" + }, + "overwriteIfExists": { + "type": "boolean" + }, + "source": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerProcessorRenameKeysProperties": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerRenameKeyEntry" + } + } + } + }, + "aws-native:logs:TransformerProcessorSplitStringProperties": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerSplitStringEntry" + } + } + } + }, + "aws-native:logs:TransformerProcessorSubstituteStringProperties": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerSubstituteStringEntry" + } + } + } + }, + "aws-native:logs:TransformerProcessorTrimStringProperties": { + "type": "object", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "aws-native:logs:TransformerProcessorTypeConverterProperties": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerTypeConverterEntry" + } + } + } + }, + "aws-native:logs:TransformerProcessorUpperCaseStringProperties": { + "type": "object", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "aws-native:logs:TransformerRenameKeyEntry": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "overwriteIfExists": { + "type": "boolean" + }, + "renameTo": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerSplitStringEntry": { + "type": "object", + "properties": { + "delimiter": { + "type": "string" + }, + "source": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerSubstituteStringEntry": { + "type": "object", + "properties": { + "from": { + "type": "string" + }, + "source": { + "type": "string" + }, + "to": { + "type": "string" + } + } + }, + "aws-native:logs:TransformerTypeConverterEntry": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "type": { + "$ref": "#/types/aws-native:logs:TransformerTypeConverterEntryType" + } + } + }, + "aws-native:logs:TransformerTypeConverterEntryType": { + "type": "string" + }, "aws-native:lookoutmetrics:AlertAction": { "type": "object", "properties": { @@ -169993,6 +171316,9 @@ } } }, + "aws-native:m2:EnvironmentNetworkType": { + "type": "string" + }, "aws-native:m2:EnvironmentStorageConfiguration": { "type": "object" }, @@ -173600,15 +174926,18 @@ }, "sourceKafkaClusterArn": { "type": "string", - "description": "Amazon Resource Name of the source Kafka cluster." + "description": "Amazon Resource Name of the source Kafka cluster.", + "replaceOnChanges": true }, "targetCompressionType": { "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType", - "description": "The type of compression to use writing records to target Kafka cluster." + "description": "The type of compression to use writing records to target Kafka cluster.", + "replaceOnChanges": true }, "targetKafkaClusterArn": { "type": "string", - "description": "Amazon Resource Name of the target Kafka cluster." + "description": "Amazon Resource Name of the target Kafka cluster.", + "replaceOnChanges": true }, "topicReplication": { "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication", @@ -173671,11 +175000,13 @@ }, "startingPosition": { "$ref": "#/types/aws-native:msk:ReplicatorReplicationStartingPosition", - "description": "Configuration for specifying the position in the topics to start replicating from." + "description": "Configuration for specifying the position in the topics to start replicating from.", + "replaceOnChanges": true }, "topicNameConfiguration": { "$ref": "#/types/aws-native:msk:ReplicatorReplicationTopicNameConfiguration", - "description": "Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias." + "description": "Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias.", + "replaceOnChanges": true }, "topicsToExclude": { "type": "array", @@ -174988,6 +176319,59 @@ } } }, + "aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange": { + "type": "object", + "properties": { + "attachmentPolicyRuleNumber": { + "type": "integer", + "description": "The rule number in the policy document that applies to this change." + }, + "networkFunctionGroupName": { + "type": "string", + "description": "The name of the network function group to change." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentTag" + }, + "description": "The key-value tags that changed for the network function group." + } + } + }, + "aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange": { + "type": "object", + "properties": { + "attachmentPolicyRuleNumber": { + "type": "integer", + "description": "The rule number in the policy document that applies to this change." + }, + "segmentName": { + "type": "string", + "description": "The name of the segment to change." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentTag" + }, + "description": "The key-value tags that changed for the segment." + } + } + }, + "aws-native:networkmanager:DirectConnectGatewayAttachmentTag": { + "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:networkmanager:GlobalNetworkTag": { "type": "object", "properties": { @@ -178327,11 +179711,11 @@ "properties": { "name": { "type": "string", - "description": "Name of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Name of parameter to start execution of a SageMaker AI Model Building Pipeline." }, "value": { "type": "string", - "description": "Value of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Value of parameter to start execution of a SageMaker AI Model Building Pipeline." } } }, @@ -178971,7 +180355,7 @@ }, "sageMakerPipelineParameters": { "$ref": "#/types/aws-native:pipes:PipeTargetSageMakerPipelineParameters", - "description": "The parameters for using a SageMaker pipeline as a target." + "description": "The parameters for using a SageMaker AI pipeline as a target." }, "sqsQueueParameters": { "$ref": "#/types/aws-native:pipes:PipeTargetSqsQueueParameters", @@ -179027,7 +180411,7 @@ "items": { "$ref": "#/types/aws-native:pipes:PipeSageMakerPipelineParameter" }, - "description": "List of Parameter names and values for SageMaker Model Building Pipeline execution." + "description": "List of Parameter names and values for SageMaker AI Model Building Pipeline execution." } } }, @@ -179218,7 +180602,8 @@ "type": "object", "properties": { "clientNamespace": { - "type": "string" + "type": "string", + "description": "The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) ." } } }, @@ -179245,10 +180630,12 @@ "type": "object", "properties": { "action": { - "type": "string" + "type": "string", + "description": "The Amazon Q Business action that is allowed." }, "filterConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorActionFilterConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataAccessorActionFilterConfiguration", + "description": "The filter configuration for the action, if any." } } }, @@ -179256,7 +180643,8 @@ "type": "object", "properties": { "documentAttributeFilter": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" + "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter", + "description": "Enables filtering of responses based on document attributes or metadata fields." } } }, @@ -179267,37 +180655,47 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" - } + }, + "description": "Performs a logical `AND` operation on all supplied filters." }, "containsAll": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` ." }, "containsAny": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` ." }, "equalsTo": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` ." }, "greaterThan": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "greaterThanOrEquals": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "lessThan": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "lessThanOrEquals": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "notFilter": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" + "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter", + "description": "Performs a logical `NOT` operation on all supplied filters." }, "orAllFilters": { "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" - } + }, + "description": "Performs a logical `OR` operation on all supplied filters." } } }, @@ -179305,7 +180703,8 @@ "type": "object", "properties": { "name": { - "type": "string" + "type": "string", + "description": "The identifier for the attribute." }, "value": { "oneOf": [ @@ -179321,7 +180720,8 @@ { "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttributeValue3Properties" } - ] + ], + "description": "The value of the attribute." } } }, @@ -179364,10 +180764,12 @@ "type": "object", "properties": { "key": { - "type": "string" + "type": "string", + "description": "The key for the tag. Keys are not case sensitive and must be unique for the Amazon Q Business application or data source." }, "value": { - "type": "string" + "type": "string", + "description": "The value associated with the tag. The value may be an empty string but it can't be null." } } }, @@ -179523,7 +180925,8 @@ "type": "object", "properties": { "imageExtractionStatus": { - "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionStatus" + "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionStatus", + "description": "Specify whether to extract semantic meaning from images and visuals from documents." } } }, @@ -179551,7 +180954,8 @@ "type": "object", "properties": { "imageExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionConfiguration", + "description": "The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) ." } } }, @@ -179852,16 +181256,20 @@ "type": "object", "properties": { "customCssUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom CSS file is hosted for an Amazon Q web experience." }, "faviconUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom favicon file is hosted for an Amazon Q web experience." }, "fontUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom font file is hosted for an Amazon Q web experience." }, "logoUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom logo file is hosted for an Amazon Q web experience." } }, "irreversibleNames": { @@ -202352,6 +203760,17 @@ } } }, + "aws-native:quicksight:DataSetPerformanceConfiguration": { + "type": "object", + "properties": { + "uniqueKeys": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:quicksight:DataSetUniqueKey" + } + } + } + }, "aws-native:quicksight:DataSetPhysicalTable": { "type": "object", "properties": { @@ -202664,6 +204083,17 @@ } } }, + "aws-native:quicksight:DataSetUniqueKey": { + "type": "object", + "properties": { + "columnNames": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, "aws-native:quicksight:DataSetUntagColumnOperation": { "type": "object", "properties": { @@ -215736,7 +217166,8 @@ "description": "The namespace the workgroup is associated with." }, "pricePerformanceTarget": { - "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTarget" + "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTarget", + "description": "An object that represents the price performance target settings for the workgroup." }, "publiclyAccessible": { "type": "boolean", @@ -215832,10 +217263,12 @@ "type": "object", "properties": { "level": { - "type": "integer" + "type": "integer", + "description": "The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE." }, "status": { - "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTargetStatus" + "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTargetStatus", + "description": "Whether the price performance target is enabled for the workgroup." } } }, @@ -217971,38 +219404,6 @@ } } }, - "aws-native:s3:BucketMetadataTableConfiguration": { - "type": "object", - "properties": { - "error": { - "$ref": "#/types/aws-native:s3:BucketMetadataTableError", - "description": "Returns the \u003ccode\u003eError\u003c/code\u003e value of the GetBucketMetadataTableConfiguration response." - }, - "s3TablesDestination": { - "$ref": "#/types/aws-native:s3:BucketS3TablesDestination" - }, - "status": { - "type": "string", - "description": "Returns the \u003ccode\u003eStatus\u003c/code\u003e value of the \u003ccode\u003eGetBucketMetadataTableConfigurationResult\u003c/code\u003e response. This value indicates the status of the metadata table. The status values are:\u003cbr/\u003e\u003ccode\u003eCREATING\u003c/code\u003e - The metadata table is in the process of being created in the specified table bucket.\u003cbr/\u003e\u003ccode\u003eACTIVE\u003c/code\u003e - The metadata table has been created successfully and records are being delivered to the table.\u003cbr/\u003e\u003ccode\u003eFAILED\u003c/code\u003e - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records." - } - }, - "irreversibleNames": { - "s3TablesDestination": "S3TablesDestination" - } - }, - "aws-native:s3:BucketMetadataTableError": { - "type": "object", - "properties": { - "errorCode": { - "type": "string", - "description": "If the \u003ccode\u003eCreateBucketMetadataTableConfiguration\u003c/code\u003e request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:\u003cbr/\u003e\u003ccode\u003eAccessDeniedCreatingResources\u003c/code\u003e - You don't have sufficient permissions to create the required resources. Make sure that you have \u003ccode\u003es3tables:CreateNamespace\u003c/code\u003e, \u003ccode\u003es3tables:CreateTable\u003c/code\u003e, \u003ccode\u003es3tables:GetTable\u003c/code\u003e and \u003ccode\u003es3tables:PutTablePolicy\u003c/code\u003e permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eAccessDeniedWritingToTable\u003c/code\u003e - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eDestinationTableNotFound\u003c/code\u003e - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eServerInternalError\u003c/code\u003e - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableAlreadyExists\u003c/code\u003e - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableBucketNotFound\u003c/code\u003e - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration." - }, - "errorMessage": { - "type": "string", - "description": "If the \u003ccode\u003eCreateBucketMetadataTableConfiguration\u003c/code\u003e request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:\u003cbr/\u003e\u003ccode\u003eAccessDeniedCreatingResources\u003c/code\u003e - You don't have sufficient permissions to create the required resources. Make sure that you have \u003ccode\u003es3tables:CreateNamespace\u003c/code\u003e, \u003ccode\u003es3tables:CreateTable\u003c/code\u003e, \u003ccode\u003es3tables:GetTable\u003c/code\u003e and \u003ccode\u003es3tables:PutTablePolicy\u003c/code\u003e permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eAccessDeniedWritingToTable\u003c/code\u003e - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eDestinationTableNotFound\u003c/code\u003e - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eServerInternalError\u003c/code\u003e - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableAlreadyExists\u003c/code\u003e - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableBucketNotFound\u003c/code\u003e - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration." - } - } - }, "aws-native:s3:BucketMetrics": { "type": "object", "properties": { @@ -218527,27 +219928,6 @@ } } }, - "aws-native:s3:BucketS3TablesDestination": { - "type": "object", - "properties": { - "tableArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the \u003ccode\u003eaws_s3_metadata\u003c/code\u003e namespace in the destination table bucket." - }, - "tableBucketArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket." - }, - "tableName": { - "type": "string", - "description": "The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the \u003ccode\u003eaws_s3_metadata\u003c/code\u003e namespace in the destination table bucket." - }, - "tableNamespace": { - "type": "string", - "description": "The table bucket namespace for the metadata table in your metadata table configuration. This value is always \u003ccode\u003eaws_s3_metadata\u003c/code\u003e." - } - } - }, "aws-native:s3:BucketServerSideEncryptionByDefault": { "type": "object", "properties": { @@ -220432,7 +221812,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:DomainCustomFileSystemConfig" }, - "description": "The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio." + "description": "The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio." }, "customPosixUserConfig": { "$ref": "#/types/aws-native:sagemaker:DomainCustomPosixUserConfig", @@ -220504,7 +221884,7 @@ }, "fileSystemPath": { "type": "string", - "description": "The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below." + "description": "The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below." } } }, @@ -220787,7 +222167,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:DomainCustomFileSystemConfig" }, - "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." + "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." }, "customPosixUserConfig": { "$ref": "#/types/aws-native:sagemaker:DomainCustomPosixUserConfig", @@ -221209,7 +222589,7 @@ }, "modelName": { "type": "string", - "description": "The name of an existing SageMaker model object in your account that you want to deploy with the inference component." + "description": "The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component." }, "startupParameters": { "$ref": "#/types/aws-native:sagemaker:InferenceComponentStartupParameters", @@ -222415,7 +223795,7 @@ "properties": { "name": { "type": "string", - "description": "The name of the result from the SageMaker training job." + "description": "The name of the result from the SageMaker AI training job." }, "notes": { "type": "string", @@ -222423,7 +223803,7 @@ }, "value": { "type": "number", - "description": "The value of a result from the SageMaker training job." + "description": "The value of a result from the SageMaker AI training job." } } }, @@ -224126,7 +225506,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:MonitoringScheduleMonitoringInput" }, - "description": "The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint." + "description": "The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint." }, "monitoringOutputConfig": { "$ref": "#/types/aws-native:sagemaker:MonitoringScheduleMonitoringOutputConfig", @@ -224636,7 +226016,7 @@ "properties": { "defaultResourceSpec": { "$ref": "#/types/aws-native:sagemaker:SpaceResourceSpec", - "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required." + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required." }, "lifecycleConfigArns": { "type": "array", @@ -224719,7 +226099,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:SpaceCustomFileSystem" }, - "description": "A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio." + "description": "A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio." }, "jupyterLabAppSettings": { "$ref": "#/types/aws-native:sagemaker:SpaceJupyterLabAppSettings", @@ -224910,7 +226290,7 @@ }, "fileSystemPath": { "type": "string", - "description": "The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below." + "description": "The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below." } } }, @@ -225127,7 +226507,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:UserProfileCustomFileSystemConfig" }, - "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." + "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." }, "customPosixUserConfig": { "$ref": "#/types/aws-native:sagemaker:UserProfileCustomPosixUserConfig", @@ -230912,6 +232292,9 @@ "aws-native:transfer:ServerSftpAuthenticationMethods": { "type": "string" }, + "aws-native:transfer:ServerState": { + "type": "string" + }, "aws-native:transfer:ServerTag": { "type": "object", "properties": { @@ -231619,10 +233002,12 @@ "type": "object", "properties": { "key": { - "type": "string" + "type": "string", + "description": "The tag key." }, "value": { - "type": "string" + "type": "string", + "description": "The tag value." } } }, @@ -231636,10 +233021,12 @@ "type": "object", "properties": { "key": { - "type": "string" + "type": "string", + "description": "The tag key." }, "value": { - "type": "string" + "type": "string", + "description": "The tag value." } } }, @@ -231818,10 +233205,12 @@ "type": "object", "properties": { "key": { - "type": "string" + "type": "string", + "description": "The tag key." }, "value": { - "type": "string" + "type": "string", + "description": "A tag value." } } }, @@ -231858,7 +233247,8 @@ "type": "object", "properties": { "enabled": { - "type": "boolean" + "type": "boolean", + "description": "Specify if the service network should be enabled for sharing." } } }, @@ -234885,13 +236275,16 @@ "type": "object", "properties": { "inputStrength": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength", + "description": "The strength of the input for the guardrail content filter." }, "outputStrength": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength", + "description": "The output strength of the guardrail content filter." }, "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContentFilterType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContentFilterType", + "description": "The type of the guardrail content filter." } } }, @@ -234906,7 +236299,8 @@ "description": "The threshold for this filter." }, "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContextualGroundingFilterType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContextualGroundingFilterType", + "description": "The type of this filter." } } }, @@ -234920,7 +236314,8 @@ "type": "object", "properties": { "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailManagedWordsType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailManagedWordsType", + "description": "The type of guardrail managed words." } } }, @@ -234931,7 +236326,8 @@ "type": "object", "properties": { "action": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction", + "description": "The action of guardrail PII entity configuration." }, "type": { "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailPiiEntityType" @@ -234945,7 +236341,8 @@ "type": "object", "properties": { "action": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction", + "description": "The action of the guardrail regex configuration." }, "description": { "type": "string", @@ -234983,7 +236380,8 @@ "description": "Name of topic in topic policy" }, "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailTopicType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailTopicType", + "description": "Type of topic in a policy." } } }, @@ -235079,10 +236477,12 @@ "type": "object", "properties": { "modelArn": { - "type": "string" + "type": "string", + "description": "The model ARN of the Bedrock foundation model." }, "parsingPrompt": { - "$ref": "#/types/aws-native:wisdom:KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties" + "$ref": "#/types/aws-native:wisdom:KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties", + "description": "The parsing prompt of the Bedrock foundation model configuration." } } }, @@ -235811,12 +237211,10 @@ "type": "object", "properties": { "key": { - "type": "string", - "description": "The key of the tag." + "type": "string" }, "value": { - "type": "string", - "description": "The value of the tag." + "type": "string" } } }, @@ -237090,7 +238488,7 @@ "aws-native:batch:getJobDefinition": { "cf": "AWS::Batch::JobDefinition", "ids": [ - "id" + "jobDefinitionName" ] }, "aws-native:batch:getJobQueue": { @@ -237202,6 +238600,13 @@ "tableName" ] }, + "aws-native:cassandra:getType": { + "cf": "AWS::Cassandra::Type", + "ids": [ + "keyspaceName", + "typeName" + ] + }, "aws-native:ce:getAnomalyMonitor": { "cf": "AWS::CE::AnomalyMonitor", "ids": [ @@ -240540,6 +241945,12 @@ "logGroupName" ] }, + "aws-native:logs:getTransformer": { + "cf": "AWS::Logs::Transformer", + "ids": [ + "logGroupIdentifier" + ] + }, "aws-native:lookoutmetrics:getAlert": { "cf": "AWS::LookoutMetrics::Alert", "ids": [ @@ -240977,6 +242388,12 @@ "deviceId" ] }, + "aws-native:networkmanager:getDirectConnectGatewayAttachment": { + "cf": "AWS::NetworkManager::DirectConnectGatewayAttachment", + "ids": [ + "attachmentId" + ] + }, "aws-native:networkmanager:getGlobalNetwork": { "cf": "AWS::NetworkManager::GlobalNetwork", "ids": [ diff --git a/provider/cmd/pulumi-resource-aws-native/schema.json b/provider/cmd/pulumi-resource-aws-native/schema.json index 3f76d20c76..822ebbe612 100644 --- a/provider/cmd/pulumi-resource-aws-native/schema.json +++ b/provider/cmd/pulumi-resource-aws-native/schema.json @@ -3693,6 +3693,24 @@ "value" ] }, + "aws-native:appconfig:ConfigurationProfileDeletionProtectionCheck": { + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html", + "type": "string", + "enum": [ + { + "name": "AccountDefault", + "value": "ACCOUNT_DEFAULT" + }, + { + "name": "Apply", + "value": "APPLY" + }, + { + "name": "Bypass", + "value": "BYPASS" + } + ] + }, "aws-native:appconfig:ConfigurationProfileTags": { "description": "Metadata to assign to the configuration profile. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.", "properties": { @@ -3763,6 +3781,24 @@ }, "type": "object" }, + "aws-native:appconfig:EnvironmentDeletionProtectionCheck": { + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html", + "type": "string", + "enum": [ + { + "name": "AccountDefault", + "value": "ACCOUNT_DEFAULT" + }, + { + "name": "Apply", + "value": "APPLY" + }, + { + "name": "Bypass", + "value": "BYPASS" + } + ] + }, "aws-native:appconfig:EnvironmentMonitor": { "description": "Amazon CloudWatch alarm to monitor during the deployment process.", "properties": { @@ -11821,16 +11857,17 @@ "type": "object" }, "aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution": { + "description": "``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.", "properties": { "capacityDistributionStrategy": { "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy", - "description": "If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` .\n\n- `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n- `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead." + "description": "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead." } }, "type": "object" }, "aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy": { - "description": "If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` .\n\n- `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n- `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.", + "description": "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.", "type": "string", "enum": [ { @@ -11844,14 +11881,15 @@ ] }, "aws-native:autoscaling:AutoScalingGroupAvailabilityZoneImpairmentPolicy": { + "description": "Describes an Availability Zone impairment policy.", "properties": { "impairedZoneHealthCheckBehavior": { "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior", - "description": "Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* ." + "description": "Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*." }, "zonalShiftEnabled": { "type": "boolean", - "description": "If `true` , enable zonal shift for your Auto Scaling group." + "description": "If ``true``, enable zonal shift for your Auto Scaling group." } }, "type": "object", @@ -11861,7 +11899,7 @@ ] }, "aws-native:autoscaling:AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior": { - "description": "Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* .", + "description": "Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*.", "type": "string", "enum": [ { @@ -17007,19 +17045,6 @@ }, "type": "object" }, - "aws-native:batch:JobDefinitionAuthorizationConfig": { - "properties": { - "accessPointId": { - "type": "string", - "description": "The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* ." - }, - "iam": { - "type": "string", - "description": "Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified." - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionContainerProperties": { "properties": { "command": { @@ -17045,17 +17070,13 @@ "description": "The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see [AWS Batch execution IAM role](https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) in the *AWS Batch User Guide* ." }, "fargatePlatformConfiguration": { - "$ref": "#/types/aws-native:batch:JobDefinitionFargatePlatformConfiguration", + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties", "description": "The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter." }, "image": { "type": "string", "description": "Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) .\n\n\u003e Docker image architecture must match the processor architecture of the compute resources that they're scheduled on. For example, ARM-based Docker images can only run on ARM-based compute resources. \n\n- Images in Amazon ECR Public repositories use the full `registry/repository[:tag]` or `registry/repository[@digest]` naming conventions. For example, `public.ecr.aws/ *registry_alias* / *my-web-app* : *latest*` .\n- Images in Amazon ECR repositories use the full registry and repository URI (for example, `123456789012.dkr.ecr.\u003cregion-name\u003e.amazonaws.com/\u003crepository-name\u003e` ).\n- Images in official repositories on Docker Hub use a single name (for example, `ubuntu` or `mongo` ).\n- Images in other repositories on Docker Hub are qualified with an organization name (for example, `amazon/amazon-ecs-agent` ).\n- Images in other online repositories are qualified further by a domain name (for example, `quay.io/assemblyline/ubuntu` )." }, - "instanceType": { - "type": "string", - "description": "The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type.\n\n\u003e This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided." - }, "jobRoleArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* ." @@ -17075,7 +17096,7 @@ "mountPoints": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionMountPoints" + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" }, "description": "The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) ." }, @@ -17131,7 +17152,7 @@ "volumes": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumes" + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" }, "description": "A list of data volumes used in a job." } @@ -17141,6 +17162,15 @@ "image" ] }, + "aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties": { + "description": "The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter.", + "properties": { + "platformVersion": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:batch:JobDefinitionDevice": { "properties": { "containerPath": { @@ -17220,17 +17250,30 @@ "volumes": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumes" + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" }, "description": "A list of volumes that are associated with the job." } }, "type": "object" }, + "aws-native:batch:JobDefinitionEfsAuthorizationConfig": { + "properties": { + "accessPointId": { + "type": "string", + "description": "The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* ." + }, + "iam": { + "type": "string", + "description": "Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified." + } + }, + "type": "object" + }, "aws-native:batch:JobDefinitionEfsVolumeConfiguration": { "properties": { "authorizationConfig": { - "$ref": "#/types/aws-native:batch:JobDefinitionAuthorizationConfig", + "$ref": "#/types/aws-native:batch:JobDefinitionEfsAuthorizationConfig", "description": "The authorization configuration details for the Amazon EFS file system." }, "fileSystemId": { @@ -17330,11 +17373,17 @@ "aws-native:batch:JobDefinitionEksContainerResourceRequirements": { "properties": { "limits": { - "$ref": "pulumi.json#/Any", + "type": "object", + "additionalProperties": { + "type": "string" + }, "description": "The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects.\n\n- **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a \"Mi\" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` .\n\n\u003e To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* .\n- **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` .\n- **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` ." }, "requests": { - "$ref": "pulumi.json#/Any", + "type": "object", + "additionalProperties": { + "type": "string" + }, "description": "The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects.\n\n- **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a \"Mi\" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` .\n\n\u003e If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* .\n- **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` .\n- **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` ." } }, @@ -17408,10 +17457,75 @@ }, "type": "object" }, + "aws-native:batch:JobDefinitionEksMetadata": { + "properties": { + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object." + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksPodProperties": { + "properties": { + "containers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" + }, + "description": "The properties of the container that's used on the Amazon EKS pod.\n\n\u003e This object is limited to 10 elements." + }, + "dnsPolicy": { + "type": "string", + "description": "The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* .\n\nValid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet`" + }, + "hostNetwork": { + "type": "boolean", + "description": "Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* ." + }, + "imagePullSecrets": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionImagePullSecret" + }, + "description": "References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry.\n\n`ImagePullSecret$name` is required when this object is used." + }, + "initContainers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" + }, + "description": "These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* .\n\n\u003e This object is limited to 10 elements." + }, + "metadata": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksMetadata", + "description": "Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* ." + }, + "serviceAccountName": { + "type": "string", + "description": "The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* ." + }, + "shareProcessNamespace": { + "type": "boolean", + "description": "Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) ." + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" + }, + "description": "Specifies the volumes for a job definition that uses Amazon EKS resources." + } + }, + "type": "object" + }, "aws-native:batch:JobDefinitionEksProperties": { "properties": { "podProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionPodProperties", + "$ref": "#/types/aws-native:batch:JobDefinitionEksPodProperties", "description": "The properties for the Kubernetes pod resources of a job." } }, @@ -17506,11 +17620,11 @@ "action" ] }, - "aws-native:batch:JobDefinitionFargatePlatformConfiguration": { + "aws-native:batch:JobDefinitionHost": { "properties": { - "platformVersion": { + "sourcePath": { "type": "string", - "description": "The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* ." + "description": "The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.\n\n\u003e This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs." } }, "type": "object" @@ -17522,10 +17636,16 @@ "description": "Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used." } }, - "type": "object", - "required": [ - "name" - ] + "type": "object" + }, + "aws-native:batch:JobDefinitionJobTimeout": { + "properties": { + "attemptDurationSeconds": { + "type": "integer", + "description": "The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds.\n\nFor array jobs, the timeout applies to the child jobs, not to the parent array job.\n\nFor multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes." + } + }, + "type": "object" }, "aws-native:batch:JobDefinitionLinuxParameters": { "properties": { @@ -17569,7 +17689,10 @@ "description": "The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default.\n\nThe supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` .\n\n\u003e Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. \n\n- **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation.\n- **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* .\n- **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* .\n- **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* .\n- **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* .\n- **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* .\n- **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* .\n\n\u003e If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. \n\nThis parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep \"Server API version\"`" }, "options": { - "$ref": "pulumi.json#/Any", + "type": "object", + "additionalProperties": { + "type": "string" + }, "description": "The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep \"Server API version\"`" }, "secretOptions": { @@ -17585,16 +17708,7 @@ "logDriver" ] }, - "aws-native:batch:JobDefinitionMetadata": { - "properties": { - "labels": { - "$ref": "pulumi.json#/Any", - "description": "Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object." - } - }, - "type": "object" - }, - "aws-native:batch:JobDefinitionMountPoints": { + "aws-native:batch:JobDefinitionMountPoint": { "properties": { "containerPath": { "type": "string", @@ -17611,6 +17725,141 @@ }, "type": "object" }, + "aws-native:batch:JobDefinitionMultiNodeContainerProperties": { + "properties": { + "command": { + "type": "array", + "items": { + "type": "string" + } + }, + "environment": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEnvironment" + } + }, + "ephemeralStorage": { + "$ref": "#/types/aws-native:batch:JobDefinitionEphemeralStorage" + }, + "executionRoleArn": { + "type": "string" + }, + "image": { + "type": "string" + }, + "instanceType": { + "type": "string" + }, + "jobRoleArn": { + "type": "string" + }, + "linuxParameters": { + "$ref": "#/types/aws-native:batch:JobDefinitionLinuxParameters" + }, + "logConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionLogConfiguration" + }, + "memory": { + "type": "integer" + }, + "mountPoints": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" + } + }, + "privileged": { + "type": "boolean" + }, + "readonlyRootFilesystem": { + "type": "boolean" + }, + "repositoryCredentials": { + "$ref": "#/types/aws-native:batch:JobDefinitionRepositoryCredentials" + }, + "resourceRequirements": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionResourceRequirement" + } + }, + "runtimePlatform": { + "$ref": "#/types/aws-native:batch:JobDefinitionRuntimePlatform" + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionSecret" + } + }, + "ulimits": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionUlimit" + } + }, + "user": { + "type": "string" + }, + "vcpus": { + "type": "integer" + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" + } + } + }, + "type": "object", + "required": [ + "image" + ] + }, + "aws-native:batch:JobDefinitionMultiNodeEcsProperties": { + "properties": { + "taskProperties": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionMultiNodeEcsTaskProperties" + } + } + }, + "type": "object", + "required": [ + "taskProperties" + ] + }, + "aws-native:batch:JobDefinitionMultiNodeEcsTaskProperties": { + "properties": { + "containers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionTaskContainerProperties" + } + }, + "executionRoleArn": { + "type": "string" + }, + "ipcMode": { + "type": "string" + }, + "pidMode": { + "type": "string" + }, + "taskRoleArn": { + "type": "string" + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" + } + } + }, + "type": "object" + }, "aws-native:batch:JobDefinitionNetworkConfiguration": { "properties": { "assignPublicIp": { @@ -17648,11 +17897,11 @@ "aws-native:batch:JobDefinitionNodeRangeProperty": { "properties": { "container": { - "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties", + "$ref": "#/types/aws-native:batch:JobDefinitionMultiNodeContainerProperties", "description": "The container details for the node range." }, "ecsProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionEcsProperties", + "$ref": "#/types/aws-native:batch:JobDefinitionMultiNodeEcsProperties", "description": "This is an object that represents the properties of the node range for a multi-node parallel job." }, "eksProperties": { @@ -17676,58 +17925,6 @@ "targetNodes" ] }, - "aws-native:batch:JobDefinitionPodProperties": { - "properties": { - "containers": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" - }, - "description": "The properties of the container that's used on the Amazon EKS pod.\n\n\u003e This object is limited to 10 elements." - }, - "dnsPolicy": { - "type": "string", - "description": "The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* .\n\nValid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet`" - }, - "hostNetwork": { - "type": "boolean", - "description": "Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* ." - }, - "imagePullSecrets": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionImagePullSecret" - } - }, - "initContainers": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" - }, - "description": "These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* .\n\n\u003e This object is limited to 10 elements." - }, - "metadata": { - "$ref": "#/types/aws-native:batch:JobDefinitionMetadata", - "description": "Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* ." - }, - "serviceAccountName": { - "type": "string", - "description": "The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* ." - }, - "shareProcessNamespace": { - "type": "boolean", - "description": "Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) ." - }, - "volumes": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" - }, - "description": "Specifies the volumes for a job definition that uses Amazon EKS resources." - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionRepositoryCredentials": { "properties": { "credentialsParameter": { @@ -17858,7 +18055,7 @@ "mountPoints": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionMountPoints" + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" }, "description": "The mount points for data volumes in your container.\n\nThis parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the [--volume](https://docs.aws.amazon.com/) option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) .\n\nWindows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives." }, @@ -17909,15 +18106,6 @@ "image" ] }, - "aws-native:batch:JobDefinitionTimeout": { - "properties": { - "attemptDurationSeconds": { - "type": "integer", - "description": "The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds.\n\nFor array jobs, the timeout applies to the child jobs, not to the parent array job.\n\nFor multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes." - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionTmpfs": { "properties": { "containerPath": { @@ -17964,14 +18152,14 @@ "softLimit" ] }, - "aws-native:batch:JobDefinitionVolumes": { + "aws-native:batch:JobDefinitionVolume": { "properties": { "efsVolumeConfiguration": { "$ref": "#/types/aws-native:batch:JobDefinitionEfsVolumeConfiguration", - "description": "This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* ." + "description": "This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` ." }, "host": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumesHost", + "$ref": "#/types/aws-native:batch:JobDefinitionHost", "description": "The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running.\n\n\u003e This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided." }, "name": { @@ -17981,15 +18169,6 @@ }, "type": "object" }, - "aws-native:batch:JobDefinitionVolumesHost": { - "properties": { - "sourcePath": { - "type": "string", - "description": "The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.\n\n\u003e This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs." - } - }, - "type": "object" - }, "aws-native:batch:JobQueueComputeEnvironmentOrder": { "properties": { "computeEnvironment": { @@ -23138,6 +23317,21 @@ "targetValue" ] }, + "aws-native:cassandra:TypeField": { + "properties": { + "fieldName": { + "type": "string" + }, + "fieldType": { + "type": "string" + } + }, + "type": "object", + "required": [ + "fieldName", + "fieldType" + ] + }, "aws-native:ce:AnomalyMonitorMonitorDimension": { "description": "The dimensions to evaluate", "type": "string", @@ -24200,6 +24394,28 @@ "value" ] }, + "aws-native:cleanrooms:ConfiguredTableAthenaTableReference": { + "properties": { + "databaseName": { + "type": "string" + }, + "outputLocation": { + "type": "string" + }, + "tableName": { + "type": "string" + }, + "workGroup": { + "type": "string" + } + }, + "type": "object", + "required": [ + "databaseName", + "tableName", + "workGroup" + ] + }, "aws-native:cleanrooms:ConfiguredTableDifferentialPrivacy": { "properties": { "columns": { @@ -24228,12 +24444,10 @@ "aws-native:cleanrooms:ConfiguredTableGlueTableReference": { "properties": { "databaseName": { - "type": "string", - "description": "The name of the database the AWS Glue table belongs to." + "type": "string" }, "tableName": { - "type": "string", - "description": "The name of the AWS Glue table." + "type": "string" } }, "type": "object", @@ -24365,11 +24579,84 @@ } ] }, - "aws-native:cleanrooms:ConfiguredTableTableReference": { + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableReference": { + "properties": { + "accountIdentifier": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "schemaName": { + "type": "string" + }, + "secretArn": { + "type": "string" + }, + "tableName": { + "type": "string" + }, + "tableSchema": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaProperties" + } + }, + "type": "object", + "required": [ + "accountIdentifier", + "databaseName", + "schemaName", + "secretArn", + "tableName", + "tableSchema" + ] + }, + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchema0Properties": { + "properties": { + "v1": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaV1" + } + } + }, + "type": "object", + "required": [ + "v1" + ] + }, + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaProperties": { + "properties": { + "v1": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaV1" + } + } + }, + "type": "object", + "required": [ + "v1" + ] + }, + "aws-native:cleanrooms:ConfiguredTableSnowflakeTableSchemaV1": { + "properties": { + "columnName": { + "type": "string" + }, + "columnType": { + "type": "string" + } + }, + "type": "object", + "required": [ + "columnName", + "columnType" + ] + }, + "aws-native:cleanrooms:ConfiguredTableTableReference0Properties": { "properties": { "glue": { - "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableGlueTableReference", - "description": "If present, a reference to the AWS Glue table referred to by this table reference." + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableGlueTableReference" } }, "type": "object", @@ -24377,6 +24664,28 @@ "glue" ] }, + "aws-native:cleanrooms:ConfiguredTableTableReference1Properties": { + "properties": { + "snowflake": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableSnowflakeTableReference" + } + }, + "type": "object", + "required": [ + "snowflake" + ] + }, + "aws-native:cleanrooms:ConfiguredTableTableReference2Properties": { + "properties": { + "athena": { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableAthenaTableReference" + } + }, + "type": "object", + "required": [ + "athena" + ] + }, "aws-native:cleanrooms:ConfiguredTableTag": { "properties": { "key": { @@ -25493,11 +25802,11 @@ }, "failureToleranceCount": { "type": "integer", - "description": "The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both)." + "description": "The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both)." }, "failureTolerancePercentage": { "type": "integer", - "description": "The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nWhen calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both." + "description": "The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.\n\nWhen calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number.\n\nConditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both." }, "maxConcurrentCount": { "type": "integer", @@ -25505,7 +25814,7 @@ }, "maxConcurrentPercentage": { "type": "integer", - "description": "The maximum percentage of accounts in which to perform this operation at one time.\n\nWhen calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.\n\nNote that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.\n\nConditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both." + "description": "The maximum percentage of accounts in which to perform this operation at one time.\n\nWhen calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.\n\nNote that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.\n\nConditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both." }, "regionConcurrencyType": { "$ref": "#/types/aws-native:cloudformation:StackSetRegionConcurrencyType", @@ -26171,6 +26480,10 @@ }, "description": "A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior." }, + "grpcConfig": { + "$ref": "#/types/aws-native:cloudfront:DistributionGrpcConfig", + "description": "The gRPC configuration for your cache behavior." + }, "lambdaFunctionAssociations": { "type": "array", "items": { @@ -26470,6 +26783,10 @@ }, "description": "A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior." }, + "grpcConfig": { + "$ref": "#/types/aws-native:cloudfront:DistributionGrpcConfig", + "description": "The gRPC configuration for your cache behavior." + }, "lambdaFunctionAssociations": { "type": "array", "items": { @@ -26595,6 +26912,18 @@ "restrictionType" ] }, + "aws-native:cloudfront:DistributionGrpcConfig": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins." + } + }, + "type": "object", + "required": [ + "enabled" + ] + }, "aws-native:cloudfront:DistributionLambdaFunctionAssociation": { "description": "A complex type that contains a Lambda@Edge function association.", "properties": { @@ -26680,10 +27009,7 @@ "description": "An optional string that you want CloudFront to prefix to the access log ``filenames`` for this distribution, for example, ``myprefix/``. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty ``Prefix`` element in the ``Logging`` element." } }, - "type": "object", - "required": [ - "bucket" - ] + "type": "object" }, "aws-native:cloudfront:DistributionOrigin": { "description": "An origin.\n An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers. To specify an origin:\n + Use ``S3OriginConfig`` to specify an Amazon S3 bucket that is not configured with static website hosting.\n + Use ``CustomOriginConfig`` to specify all other kinds of origins, including:\n + An Amazon S3 bucket that is configured with static website hosting\n + An Elastic Load Balancing load balancer\n + An EMPlong endpoint\n + An EMSlong container\n + Any other HTTP server, running on an Amazon EC2 instance or any other kind of host\n \n \n For the current maximum number of origins that you can specify per distribution, see [General Quotas on Web Distributions](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html#limits-web-distributions) in the *Amazon CloudFront Developer Guide* (quotas were formerly referred to as limits).", @@ -26770,6 +27096,10 @@ "members": { "$ref": "#/types/aws-native:cloudfront:DistributionOriginGroupMembers", "description": "A complex type that contains information about the origins in an origin group." + }, + "selectionCriteria": { + "$ref": "#/types/aws-native:cloudfront:DistributionOriginGroupSelectionCriteria", + "description": "The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* ." } }, "type": "object", @@ -26826,6 +27156,19 @@ "quantity" ] }, + "aws-native:cloudfront:DistributionOriginGroupSelectionCriteria": { + "type": "string", + "enum": [ + { + "name": "Default", + "value": "default" + }, + { + "name": "MediaQualityBased", + "value": "media-quality-based" + } + ] + }, "aws-native:cloudfront:DistributionOriginGroups": { "description": "A complex data type for the origin groups specified for a distribution.", "properties": { @@ -32549,13 +32892,16 @@ "description": "Overrides attached to the hours of operation.", "properties": { "effectiveFrom": { - "type": "string" + "type": "string", + "description": "The date from which the hours of operation override would be effective." }, "effectiveTill": { - "type": "string" + "type": "string", + "description": "The date till which the hours of operation override would be effective." }, "hoursOfOperationOverrideId": { - "type": "string" + "type": "string", + "description": "The identifier for the hours of operation override." }, "overrideConfig": { "type": "array", @@ -32991,6 +33337,16 @@ }, "type": "object" }, + "aws-native:connect:QueueOutboundEmailConfig": { + "description": "The outbound email address ID.", + "properties": { + "outboundEmailAddressId": { + "type": "string", + "description": "The identifier of the email address." + } + }, + "type": "object" + }, "aws-native:connect:QueueStatus": { "description": "The status of the queue.", "type": "string", @@ -33288,14 +33644,14 @@ ] }, "aws-native:connect:RuleActions": { - "description": "The list of actions that will be executed when a rule is triggered.", + "description": "A list of actions to be run when the rule is triggered.", "properties": { "assignContactCategoryActions": { "type": "array", "items": { "$ref": "#/types/aws-native:connect:RuleAssignContactCategoryAction" }, - "description": "Information about the contact category action. The syntax can be empty, for example, `{}` ." + "description": "Information about the contact category action. The syntax can be empty, for example, ``{}``." }, "createCaseActions": { "type": "array", @@ -33314,7 +33670,7 @@ "items": { "$ref": "#/types/aws-native:connect:RuleEventBridgeAction" }, - "description": "Information about the EventBridge action." + "description": "Information about the EV action." }, "sendNotificationActions": { "type": "array", @@ -33334,7 +33690,7 @@ "items": { "$ref": "#/types/aws-native:connect:RuleTaskAction" }, - "description": "Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate`" + "description": "Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``" }, "updateCaseActions": { "type": "array", @@ -33350,7 +33706,6 @@ "type": "object" }, "aws-native:connect:RuleCreateCaseAction": { - "description": "The definition for create case action.", "properties": { "fields": { "type": "array", @@ -33359,8 +33714,7 @@ } }, "templateId": { - "type": "string", - "description": "The Id of template." + "type": "string" } }, "type": "object", @@ -33374,11 +33728,11 @@ "type": "object" }, "aws-native:connect:RuleEventBridgeAction": { - "description": "The definition for event bridge action.", + "description": "The EV action definition.", "properties": { "name": { "type": "string", - "description": "The name of the event bridge action." + "description": "The name." } }, "type": "object", @@ -33387,11 +33741,9 @@ ] }, "aws-native:connect:RuleField": { - "description": "The field of the case.", "properties": { "id": { - "type": "string", - "description": "The Id of the field" + "type": "string" }, "value": { "$ref": "#/types/aws-native:connect:RuleFieldValue" @@ -33404,7 +33756,7 @@ ] }, "aws-native:connect:RuleFieldValue": { - "description": "The value of the field.", + "description": "Object for case field values.", "properties": { "booleanValue": { "type": "boolean" @@ -33429,20 +33781,20 @@ "items": { "type": "string" }, - "description": "The list of recipients by user arns." + "description": "The Amazon Resource Name (ARN) of the user account." }, "userTags": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "The collection of recipients who are identified by user tags" + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }. CON users with the specified tags will be notified." } }, "type": "object" }, "aws-native:connect:RulePublishStatus": { - "description": "The publish status of a rule, either draft or published.", + "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``", "type": "string", "enum": [ { @@ -33456,13 +33808,15 @@ ] }, "aws-native:connect:RuleReference": { - "description": "A contact reference.", + "description": "Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.)", "properties": { "type": { - "$ref": "#/types/aws-native:connect:RuleReferenceType" + "$ref": "#/types/aws-native:connect:RuleReferenceType", + "description": "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``" }, "value": { - "type": "string" + "type": "string", + "description": "A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP)." } }, "type": "object", @@ -33472,6 +33826,7 @@ ] }, "aws-native:connect:RuleReferenceType": { + "description": "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``", "type": "string", "enum": [ { @@ -33501,26 +33856,27 @@ ] }, "aws-native:connect:RuleSendNotificationAction": { - "description": "The definition for sending notification action.", + "description": "Information about the send notification action.", "properties": { "content": { "type": "string", - "description": "The content of notification." + "description": "Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." }, "contentType": { "$ref": "#/types/aws-native:connect:RuleSendNotificationActionContentType", - "description": "The type of content." + "description": "Content type format.\n *Allowed value*: ``PLAIN_TEXT``" }, "deliveryMethod": { "$ref": "#/types/aws-native:connect:RuleSendNotificationActionDeliveryMethod", - "description": "The means of delivery." + "description": "Notification delivery method.\n *Allowed value*: ``EMAIL``" }, "recipient": { - "$ref": "#/types/aws-native:connect:RuleNotificationRecipientType" + "$ref": "#/types/aws-native:connect:RuleNotificationRecipientType", + "description": "Notification recipient." }, "subject": { "type": "string", - "description": "The subject of notification." + "description": "The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." } }, "type": "object", @@ -33532,7 +33888,7 @@ ] }, "aws-native:connect:RuleSendNotificationActionContentType": { - "description": "The type of content.", + "description": "Content type format.\n *Allowed value*: ``PLAIN_TEXT``", "type": "string", "enum": [ { @@ -33542,7 +33898,7 @@ ] }, "aws-native:connect:RuleSendNotificationActionDeliveryMethod": { - "description": "The means of delivery.", + "description": "Notification delivery method.\n *Allowed value*: ``EMAIL``", "type": "string", "enum": [ { @@ -33552,11 +33908,9 @@ ] }, "aws-native:connect:RuleSubmitAutoEvaluationAction": { - "description": "The definition of submit auto evaluation action.", "properties": { "evaluationFormArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the evaluation form." + "type": "string" } }, "type": "object", @@ -33569,11 +33923,11 @@ "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": "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's 1 to 256 characters in length." + "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", @@ -33583,26 +33937,26 @@ ] }, "aws-native:connect:RuleTaskAction": { - "description": "The definition of task action.", + "description": "Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``", "properties": { "contactFlowArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the contact flow." + "description": "The Amazon Resource Name (ARN) of the flow." }, "description": { "type": "string", - "description": "The description which appears in the agent's Contact Control Panel (CCP)." + "description": "The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." }, "name": { "type": "string", - "description": "The name which appears in the agent's Contact Control Panel (CCP)." + "description": "The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*." }, "references": { "type": "object", "additionalProperties": { "$ref": "#/types/aws-native:connect:RuleReference" }, - "description": "A formatted URL that is shown to an agent in the Contact Control Panel (CCP)." + "description": "Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.)" } }, "type": "object", @@ -33612,15 +33966,15 @@ ] }, "aws-native:connect:RuleTriggerEventSource": { - "description": "The event source that will trigger the rule.", + "description": "The name of the event source.", "properties": { "eventSourceName": { "$ref": "#/types/aws-native:connect:RuleTriggerEventSourceEventSourceName", - "description": "The name of event source." + "description": "The name of the event source." }, "integrationAssociationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) for the AppIntegration association." + "description": "The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``" } }, "type": "object", @@ -33629,7 +33983,7 @@ ] }, "aws-native:connect:RuleTriggerEventSourceEventSourceName": { - "description": "The name of event source.", + "description": "The name of the event source.", "type": "string", "enum": [ { @@ -33679,7 +34033,6 @@ ] }, "aws-native:connect:RuleUpdateCaseAction": { - "description": "The definition for update case action.", "properties": { "fields": { "type": "array", @@ -34126,11 +34479,11 @@ }, "firstName": { "type": "string", - "description": "The first name. This is required if you are using Amazon Connect or SAML for identity management." + "description": "The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted." }, "lastName": { "type": "string", - "description": "The last name. This is required if you are using Amazon Connect or SAML for identity management." + "description": "The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted." }, "mobile": { "type": "string", @@ -34596,6 +34949,16 @@ }, "type": "object" }, + "aws-native:connectcampaignsv2:CampaignEventTrigger": { + "description": "The event trigger of the campaign", + "properties": { + "customerProfilesDomainArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the Customer Profiles domain." + } + }, + "type": "object" + }, "aws-native:connectcampaignsv2:CampaignLocalTimeZoneConfig": { "description": "Local time zone config", "properties": { @@ -34775,11 +35138,15 @@ "type": "object" }, "aws-native:connectcampaignsv2:CampaignSource": { - "description": "The possible types of channel config parameters", + "description": "The possible source of the campaign", "properties": { "customerProfilesSegmentArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the Customer Profiles segment." + }, + "eventTrigger": { + "$ref": "#/types/aws-native:connectcampaignsv2:CampaignEventTrigger", + "description": "The event trigger of the campaign." } }, "type": "object" @@ -45671,7 +46038,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:ec2:LaunchTemplateReference" - } + }, + "description": "The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences." } }, "type": "object" @@ -45832,6 +46200,9 @@ }, "description": "The network interfaces for the instance." }, + "networkPerformanceOptions": { + "$ref": "pulumi.json#/Any" + }, "placement": { "$ref": "#/types/aws-native:ec2:LaunchTemplatePlacement", "description": "The placement for the instance." @@ -49807,6 +50178,80 @@ } ] }, + "aws-native:ec2:VpcEndpointDnsOptionsSpecification": { + "properties": { + "dnsRecordIpType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecificationDnsRecordIpType" + }, + "privateDnsOnlyForInboundResolverEndpoint": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint" + } + }, + "type": "object" + }, + "aws-native:ec2:VpcEndpointDnsOptionsSpecificationDnsRecordIpType": { + "type": "string", + "enum": [ + { + "name": "Ipv4", + "value": "ipv4" + }, + { + "name": "Ipv6", + "value": "ipv6" + }, + { + "name": "Dualstack", + "value": "dualstack" + }, + { + "name": "ServiceDefined", + "value": "service-defined" + }, + { + "name": "NotSpecified", + "value": "not-specified" + } + ] + }, + "aws-native:ec2:VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint": { + "type": "string", + "enum": [ + { + "name": "OnlyInboundResolver", + "value": "OnlyInboundResolver" + }, + { + "name": "AllResolvers", + "value": "AllResolvers" + }, + { + "name": "NotSpecified", + "value": "NotSpecified" + } + ] + }, + "aws-native:ec2:VpcEndpointIpAddressType": { + "type": "string", + "enum": [ + { + "name": "Ipv4", + "value": "ipv4" + }, + { + "name": "Ipv6", + "value": "ipv6" + }, + { + "name": "Dualstack", + "value": "dualstack" + }, + { + "name": "NotSpecified", + "value": "not-specified" + } + ] + }, "aws-native:ec2:VpcEndpointType": { "description": "The type of endpoint.\n Default: Gateway", "type": "string", @@ -49822,6 +50267,14 @@ { "name": "GatewayLoadBalancer", "value": "GatewayLoadBalancer" + }, + { + "name": "ServiceNetwork", + "value": "ServiceNetwork" + }, + { + "name": "Resource", + "value": "Resource" } ] }, @@ -50796,7 +51249,7 @@ "type": "object" }, "aws-native:ecs:ServiceAvailabilityZoneRebalancing": { - "description": "Indicates whether to use Availability Zone rebalancing for the service.\n\nFor more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* .", + "description": "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*.", "type": "string", "enum": [ { @@ -50814,7 +51267,7 @@ "properties": { "assignPublicIp": { "$ref": "#/types/aws-native:ecs:ServiceAwsVpcConfigurationAssignPublicIp", - "description": "Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``." + "description": "Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``." }, "securityGroups": { "type": "array", @@ -50834,7 +51287,7 @@ "type": "object" }, "aws-native:ecs:ServiceAwsVpcConfigurationAssignPublicIp": { - "description": "Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``.", + "description": "Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``.", "type": "string", "enum": [ { @@ -51044,7 +51497,7 @@ "type": "object" }, "aws-native:ecs:ServiceDeploymentController": { - "description": "The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*.", + "description": "The deployment controller to use for the service.", "properties": { "type": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentControllerType", @@ -51415,14 +51868,15 @@ ] }, "aws-native:ecs:ServiceVpcLatticeConfiguration": { + "description": "The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to.", "properties": { "portName": { "type": "string", - "description": "The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition." + "description": "The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition." }, "roleArn": { "type": "string", - "description": "The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure." + "description": "The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS\n infrastructure IAM role that is used to manage your VPC Lattice infrastructure." }, "targetGroupArn": { "type": "string", @@ -51842,7 +52296,7 @@ "properties": { "sizeInGiB": { "type": "integer", - "description": "The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB." + "description": "The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB." } }, "type": "object" @@ -55257,6 +55711,20 @@ }, "type": "object" }, + "aws-native:emrserverless:ApplicationSchedulerConfiguration": { + "description": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above.", + "properties": { + "maxConcurrentRuns": { + "type": "integer", + "description": "The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000." + }, + "queueTimeoutMinutes": { + "type": "integer", + "description": "The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720." + } + }, + "type": "object" + }, "aws-native:emrserverless:ApplicationTag": { "description": "A key-value pair to associate with a resource.", "properties": { @@ -56890,11 +57358,11 @@ "properties": { "name": { "type": "string", - "description": "Name of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Name of parameter to start execution of a SageMaker AI Model Building Pipeline." }, "value": { "type": "string", - "description": "Value of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Value of parameter to start execution of a SageMaker AI Model Building Pipeline." } }, "type": "object", @@ -56910,7 +57378,7 @@ "items": { "$ref": "#/types/aws-native:events:RuleSageMakerPipelineParameter" }, - "description": "List of Parameter names and values for SageMaker Model Building Pipeline execution." + "description": "List of Parameter names and values for SageMaker AI Model Building Pipeline execution." } }, "type": "object" @@ -57022,7 +57490,7 @@ }, "sageMakerPipelineParameters": { "$ref": "#/types/aws-native:events:RuleSageMakerPipelineParameters", - "description": "Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline.\n\nIf you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events." + "description": "Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline.\n\nIf you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events." }, "sqsParameters": { "$ref": "#/types/aws-native:events:RuleSqsParameters", @@ -57804,7 +58272,6 @@ }, "type": "object", "required": [ - "dataSources", "outputs" ] }, @@ -85386,6 +85853,24 @@ } ] }, + "aws-native:logs:QueryDefinitionQueryLanguage": { + "description": "Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default.", + "type": "string", + "enum": [ + { + "name": "Cwli", + "value": "CWLI" + }, + { + "name": "Sql", + "value": "SQL" + }, + { + "name": "Ppl", + "value": "PPL" + } + ] + }, "aws-native:logs:ResourceConfigProperties": { "description": "OpenSearchResourceConfig for the given Integration", "properties": { @@ -85410,6 +85895,606 @@ } ] }, + "aws-native:logs:TransformerAddKeyEntry": { + "properties": { + "key": { + "type": "string", + "description": "The key of the new entry to be added to the log event" + }, + "overwriteIfExists": { + "type": "boolean", + "description": "Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` ." + }, + "value": { + "type": "string", + "description": "The value of the new entry to be added to the log event" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:logs:TransformerCopyValueEntry": { + "properties": { + "overwriteIfExists": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "target": { + "type": "string" + } + }, + "type": "object", + "required": [ + "source", + "target" + ] + }, + "aws-native:logs:TransformerMoveKeyEntry": { + "properties": { + "overwriteIfExists": { + "type": "boolean" + }, + "source": { + "type": "string" + }, + "target": { + "type": "string" + } + }, + "type": "object", + "required": [ + "source", + "target" + ] + }, + "aws-native:logs:TransformerParseCloudfront": { + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + }, + "type": "object" + }, + "aws-native:logs:TransformerParsePostgres": { + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + }, + "type": "object" + }, + "aws-native:logs:TransformerParseRoute53": { + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + }, + "type": "object" + }, + "aws-native:logs:TransformerParseVpc": { + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + }, + "type": "object" + }, + "aws-native:logs:TransformerParseWaf": { + "properties": { + "source": { + "type": "string", + "description": "Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` ." + } + }, + "type": "object" + }, + "aws-native:logs:TransformerProcessor": { + "description": "Individual processor configuration", + "properties": { + "addKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorAddKeysProperties", + "description": "Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer." + }, + "copyValue": { + "$ref": "#/types/aws-native:logs:TransformerProcessorCopyValueProperties", + "description": "Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer." + }, + "csv": { + "$ref": "#/types/aws-native:logs:TransformerProcessorCsvProperties", + "description": "Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer." + }, + "dateTimeConverter": { + "$ref": "#/types/aws-native:logs:TransformerProcessorDateTimeConverterProperties", + "description": "Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer." + }, + "deleteKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorDeleteKeysProperties", + "description": "Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer." + }, + "grok": { + "$ref": "#/types/aws-native:logs:TransformerProcessorGrokProperties", + "description": "Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer." + }, + "listToMap": { + "$ref": "#/types/aws-native:logs:TransformerProcessorListToMapProperties", + "description": "Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer." + }, + "lowerCaseString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorLowerCaseStringProperties", + "description": "Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer." + }, + "moveKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorMoveKeysProperties", + "description": "Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer." + }, + "parseCloudfront": { + "$ref": "#/types/aws-native:logs:TransformerParseCloudfront", + "description": "Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseJson": { + "$ref": "#/types/aws-native:logs:TransformerProcessorParseJsonProperties", + "description": "Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer." + }, + "parseKeyValue": { + "$ref": "#/types/aws-native:logs:TransformerProcessorParseKeyValueProperties", + "description": "Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer." + }, + "parsePostgres": { + "$ref": "#/types/aws-native:logs:TransformerParsePostgres", + "description": "Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseRoute53": { + "$ref": "#/types/aws-native:logs:TransformerParseRoute53", + "description": "Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseVpc": { + "$ref": "#/types/aws-native:logs:TransformerParseVpc", + "description": "Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "parseWaf": { + "$ref": "#/types/aws-native:logs:TransformerParseWaf", + "description": "Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer.\n\nIf you use this processor, it must be the first processor in your transformer." + }, + "renameKeys": { + "$ref": "#/types/aws-native:logs:TransformerProcessorRenameKeysProperties", + "description": "Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer." + }, + "splitString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorSplitStringProperties", + "description": "Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer." + }, + "substituteString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorSubstituteStringProperties", + "description": "Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer." + }, + "trimString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorTrimStringProperties", + "description": "Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer." + }, + "typeConverter": { + "$ref": "#/types/aws-native:logs:TransformerProcessorTypeConverterProperties", + "description": "Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer." + }, + "upperCaseString": { + "$ref": "#/types/aws-native:logs:TransformerProcessorUpperCaseStringProperties", + "description": "Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer." + } + }, + "type": "object" + }, + "aws-native:logs:TransformerProcessorAddKeysProperties": { + "description": "Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer.", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerAddKeyEntry" + } + } + }, + "type": "object", + "required": [ + "entries" + ] + }, + "aws-native:logs:TransformerProcessorCopyValueProperties": { + "description": "Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer.", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerCopyValueEntry" + } + } + }, + "type": "object", + "required": [ + "entries" + ] + }, + "aws-native:logs:TransformerProcessorCsvProperties": { + "description": "Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer.", + "properties": { + "columns": { + "type": "array", + "items": { + "type": "string" + } + }, + "delimiter": { + "type": "string" + }, + "quoteCharacter": { + "type": "string" + }, + "source": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:logs:TransformerProcessorDateTimeConverterProperties": { + "description": "Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer.", + "properties": { + "locale": { + "type": "string" + }, + "matchPatterns": { + "type": "array", + "items": { + "type": "string" + } + }, + "source": { + "type": "string" + }, + "sourceTimezone": { + "type": "string" + }, + "target": { + "type": "string" + }, + "targetFormat": { + "type": "string" + }, + "targetTimezone": { + "type": "string" + } + }, + "type": "object", + "required": [ + "matchPatterns", + "source", + "target" + ] + }, + "aws-native:logs:TransformerProcessorDeleteKeysProperties": { + "description": "Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer.", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "withKeys" + ] + }, + "aws-native:logs:TransformerProcessorGrokProperties": { + "description": "Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer.", + "properties": { + "match": { + "type": "string" + }, + "source": { + "type": "string" + } + }, + "type": "object", + "required": [ + "match" + ] + }, + "aws-native:logs:TransformerProcessorListToMapProperties": { + "description": "Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer.", + "properties": { + "flatten": { + "type": "boolean" + }, + "flattenedElement": { + "$ref": "#/types/aws-native:logs:TransformerProcessorListToMapPropertiesFlattenedElement" + }, + "key": { + "type": "string" + }, + "source": { + "type": "string" + }, + "target": { + "type": "string" + }, + "valueKey": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "source" + ] + }, + "aws-native:logs:TransformerProcessorListToMapPropertiesFlattenedElement": { + "type": "string", + "enum": [ + { + "name": "First", + "value": "first" + }, + { + "name": "Last", + "value": "last" + } + ] + }, + "aws-native:logs:TransformerProcessorLowerCaseStringProperties": { + "description": "Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer.", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "withKeys" + ] + }, + "aws-native:logs:TransformerProcessorMoveKeysProperties": { + "description": "Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer.", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerMoveKeyEntry" + } + } + }, + "type": "object", + "required": [ + "entries" + ] + }, + "aws-native:logs:TransformerProcessorParseJsonProperties": { + "description": "Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer.", + "properties": { + "destination": { + "type": "string" + }, + "source": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:logs:TransformerProcessorParseKeyValueProperties": { + "description": "Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer.", + "properties": { + "destination": { + "type": "string" + }, + "fieldDelimiter": { + "type": "string" + }, + "keyPrefix": { + "type": "string" + }, + "keyValueDelimiter": { + "type": "string" + }, + "nonMatchValue": { + "type": "string" + }, + "overwriteIfExists": { + "type": "boolean" + }, + "source": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:logs:TransformerProcessorRenameKeysProperties": { + "description": "Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer.", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerRenameKeyEntry" + } + } + }, + "type": "object", + "required": [ + "entries" + ] + }, + "aws-native:logs:TransformerProcessorSplitStringProperties": { + "description": "Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer.", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerSplitStringEntry" + } + } + }, + "type": "object", + "required": [ + "entries" + ] + }, + "aws-native:logs:TransformerProcessorSubstituteStringProperties": { + "description": "Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer.", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerSubstituteStringEntry" + } + } + }, + "type": "object", + "required": [ + "entries" + ] + }, + "aws-native:logs:TransformerProcessorTrimStringProperties": { + "description": "Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer.", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "withKeys" + ] + }, + "aws-native:logs:TransformerProcessorTypeConverterProperties": { + "description": "Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer.", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerTypeConverterEntry" + } + } + }, + "type": "object", + "required": [ + "entries" + ] + }, + "aws-native:logs:TransformerProcessorUpperCaseStringProperties": { + "description": "Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer.", + "properties": { + "withKeys": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "withKeys" + ] + }, + "aws-native:logs:TransformerRenameKeyEntry": { + "properties": { + "key": { + "type": "string" + }, + "overwriteIfExists": { + "type": "boolean" + }, + "renameTo": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "renameTo" + ] + }, + "aws-native:logs:TransformerSplitStringEntry": { + "properties": { + "delimiter": { + "type": "string" + }, + "source": { + "type": "string" + } + }, + "type": "object", + "required": [ + "delimiter", + "source" + ] + }, + "aws-native:logs:TransformerSubstituteStringEntry": { + "properties": { + "from": { + "type": "string" + }, + "source": { + "type": "string" + }, + "to": { + "type": "string" + } + }, + "type": "object", + "required": [ + "from", + "source", + "to" + ] + }, + "aws-native:logs:TransformerTypeConverterEntry": { + "properties": { + "key": { + "type": "string" + }, + "type": { + "$ref": "#/types/aws-native:logs:TransformerTypeConverterEntryType" + } + }, + "type": "object", + "required": [ + "key", + "type" + ] + }, + "aws-native:logs:TransformerTypeConverterEntryType": { + "type": "string", + "enum": [ + { + "name": "Boolean", + "value": "boolean" + }, + { + "name": "Integer", + "value": "integer" + }, + { + "name": "Double", + "value": "double" + }, + { + "name": "String", + "value": "string" + } + ] + }, "aws-native:lookoutmetrics:AlertAction": { "properties": { "lambdaConfiguration": { @@ -85965,6 +87050,19 @@ "desiredCapacity" ] }, + "aws-native:m2:EnvironmentNetworkType": { + "type": "string", + "enum": [ + { + "name": "Ipv4", + "value": "ipv4" + }, + { + "name": "Dual", + "value": "dual" + } + ] + }, "aws-native:m2:EnvironmentStorageConfiguration": { "description": "Defines the storage configuration for an environment.", "type": "object" @@ -92170,15 +93268,18 @@ }, "sourceKafkaClusterArn": { "type": "string", - "description": "Amazon Resource Name of the source Kafka cluster." + "description": "Amazon Resource Name of the source Kafka cluster.", + "replaceOnChanges": true }, "targetCompressionType": { "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType", - "description": "The type of compression to use writing records to target Kafka cluster." + "description": "The type of compression to use writing records to target Kafka cluster.", + "replaceOnChanges": true }, "targetKafkaClusterArn": { "type": "string", - "description": "Amazon Resource Name of the target Kafka cluster." + "description": "Amazon Resource Name of the target Kafka cluster.", + "replaceOnChanges": true }, "topicReplication": { "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication", @@ -92299,11 +93400,13 @@ }, "startingPosition": { "$ref": "#/types/aws-native:msk:ReplicatorReplicationStartingPosition", - "description": "Configuration for specifying the position in the topics to start replicating from." + "description": "Configuration for specifying the position in the topics to start replicating from.", + "replaceOnChanges": true }, "topicNameConfiguration": { "$ref": "#/types/aws-native:msk:ReplicatorReplicationTopicNameConfiguration", - "description": "Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias." + "description": "Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias.", + "replaceOnChanges": true }, "topicsToExclude": { "type": "array", @@ -94113,6 +95216,66 @@ "value" ] }, + "aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange": { + "description": "The attachment to move from one network function group to another.", + "properties": { + "attachmentPolicyRuleNumber": { + "type": "integer", + "description": "The rule number in the policy document that applies to this change." + }, + "networkFunctionGroupName": { + "type": "string", + "description": "The name of the network function group to change." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentTag" + }, + "description": "The key-value tags that changed for the network function group." + } + }, + "type": "object" + }, + "aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange": { + "description": "The attachment to move from one segment to another.", + "properties": { + "attachmentPolicyRuleNumber": { + "type": "integer", + "description": "The rule number in the policy document that applies to this change." + }, + "segmentName": { + "type": "string", + "description": "The name of the segment to change." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentTag" + }, + "description": "The key-value tags that changed for the segment." + } + }, + "type": "object" + }, + "aws-native:networkmanager:DirectConnectGatewayAttachmentTag": { + "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:networkmanager:GlobalNetworkTag": { "description": "A key-value pair to associate with a global network resource.", "properties": { @@ -99172,11 +100335,11 @@ "properties": { "name": { "type": "string", - "description": "Name of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Name of parameter to start execution of a SageMaker AI Model Building Pipeline." }, "value": { "type": "string", - "description": "Value of parameter to start execution of a SageMaker Model Building Pipeline." + "description": "Value of parameter to start execution of a SageMaker AI Model Building Pipeline." } }, "type": "object", @@ -99933,7 +101096,7 @@ }, "sageMakerPipelineParameters": { "$ref": "#/types/aws-native:pipes:PipeTargetSageMakerPipelineParameters", - "description": "The parameters for using a SageMaker pipeline as a target." + "description": "The parameters for using a SageMaker AI pipeline as a target." }, "sqsQueueParameters": { "$ref": "#/types/aws-native:pipes:PipeTargetSqsQueueParameters", @@ -99993,7 +101156,7 @@ "items": { "$ref": "#/types/aws-native:pipes:PipeSageMakerPipelineParameter" }, - "description": "List of Parameter names and values for SageMaker Model Building Pipeline execution." + "description": "List of Parameter names and values for SageMaker AI Model Building Pipeline execution." } }, "type": "object" @@ -100310,7 +101473,8 @@ "aws-native:qbusiness:ApplicationQuickSightConfiguration": { "properties": { "clientNamespace": { - "type": "string" + "type": "string", + "description": "The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) ." } }, "type": "object", @@ -100376,10 +101540,12 @@ "aws-native:qbusiness:DataAccessorActionConfiguration": { "properties": { "action": { - "type": "string" + "type": "string", + "description": "The Amazon Q Business action that is allowed." }, "filterConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorActionFilterConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataAccessorActionFilterConfiguration", + "description": "The filter configuration for the action, if any." } }, "type": "object", @@ -100390,7 +101556,8 @@ "aws-native:qbusiness:DataAccessorActionFilterConfiguration": { "properties": { "documentAttributeFilter": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" + "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter", + "description": "Enables filtering of responses based on document attributes or metadata fields." } }, "type": "object", @@ -100404,37 +101571,47 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" - } + }, + "description": "Performs a logical `AND` operation on all supplied filters." }, "containsAll": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` ." }, "containsAny": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` ." }, "equalsTo": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` ." }, "greaterThan": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "greaterThanOrEquals": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "lessThan": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "lessThanOrEquals": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute" + "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttribute", + "description": "Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` ." }, "notFilter": { - "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" + "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter", + "description": "Performs a logical `NOT` operation on all supplied filters." }, "orAllFilters": { "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorAttributeFilter" - } + }, + "description": "Performs a logical `OR` operation on all supplied filters." } }, "type": "object" @@ -100442,7 +101619,8 @@ "aws-native:qbusiness:DataAccessorDocumentAttribute": { "properties": { "name": { - "type": "string" + "type": "string", + "description": "The identifier for the attribute." }, "value": { "oneOf": [ @@ -100458,7 +101636,8 @@ { "$ref": "#/types/aws-native:qbusiness:DataAccessorDocumentAttributeValue3Properties" } - ] + ], + "description": "The value of the attribute." } }, "type": "object", @@ -100517,10 +101696,12 @@ "aws-native:qbusiness:DataAccessorTag": { "properties": { "key": { - "type": "string" + "type": "string", + "description": "The key for the tag. Keys are not case sensitive and must be unique for the Amazon Q Business application or data source." }, "value": { - "type": "string" + "type": "string", + "description": "The value associated with the tag. The value may be an empty string but it can't be null." } }, "type": "object", @@ -100754,7 +101935,8 @@ "aws-native:qbusiness:DataSourceImageExtractionConfiguration": { "properties": { "imageExtractionStatus": { - "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionStatus" + "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionStatus", + "description": "Specify whether to extract semantic meaning from images and visuals from documents." } }, "type": "object", @@ -100795,7 +101977,8 @@ "aws-native:qbusiness:DataSourceMediaExtractionConfiguration": { "properties": { "imageExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceImageExtractionConfiguration", + "description": "The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) ." } }, "type": "object" @@ -101383,16 +102566,20 @@ "aws-native:qbusiness:WebExperienceCustomizationConfiguration": { "properties": { "customCssUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom CSS file is hosted for an Amazon Q web experience." }, "faviconUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom favicon file is hosted for an Amazon Q web experience." }, "fontUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom font file is hosted for an Amazon Q web experience." }, "logoUrl": { - "type": "string" + "type": "string", + "description": "Provides the URL where the custom logo file is hosted for an Amazon Q web experience." } }, "type": "object" @@ -129373,6 +130560,17 @@ "parameterName" ] }, + "aws-native:quicksight:DataSetPerformanceConfiguration": { + "properties": { + "uniqueKeys": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:quicksight:DataSetUniqueKey" + } + } + }, + "type": "object" + }, "aws-native:quicksight:DataSetPhysicalTable": { "description": "\u003cp\u003eA view of a data source that contains information about the shape of the data in the\n underlying source. This is a variant type structure. For this structure to be valid,\n only one of the attributes can be non-null.\u003c/p\u003e", "properties": { @@ -129822,6 +131020,20 @@ }, "type": "object" }, + "aws-native:quicksight:DataSetUniqueKey": { + "properties": { + "columnNames": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "columnNames" + ] + }, "aws-native:quicksight:DataSetUntagColumnOperation": { "description": "\u003cp\u003eA transform operation that removes tags associated with a column.\u003c/p\u003e", "properties": { @@ -146836,7 +148048,8 @@ "description": "The namespace the workgroup is associated with." }, "pricePerformanceTarget": { - "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTarget" + "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTarget", + "description": "An object that represents the price performance target settings for the workgroup." }, "publiclyAccessible": { "type": "boolean", @@ -146932,10 +148145,12 @@ "aws-native:redshiftserverless:WorkgroupPerformanceTarget": { "properties": { "level": { - "type": "integer" + "type": "integer", + "description": "The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE." }, "status": { - "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTargetStatus" + "$ref": "#/types/aws-native:redshiftserverless:WorkgroupPerformanceTargetStatus", + "description": "Whether the price performance target is enabled for the workgroup." } }, "type": "object" @@ -150687,42 +151902,6 @@ }, "type": "object" }, - "aws-native:s3:BucketMetadataTableConfiguration": { - "properties": { - "error": { - "$ref": "#/types/aws-native:s3:BucketMetadataTableError", - "description": "Returns the \u003ccode\u003eError\u003c/code\u003e value of the GetBucketMetadataTableConfiguration response." - }, - "s3TablesDestination": { - "$ref": "#/types/aws-native:s3:BucketS3TablesDestination" - }, - "status": { - "type": "string", - "description": "Returns the \u003ccode\u003eStatus\u003c/code\u003e value of the \u003ccode\u003eGetBucketMetadataTableConfigurationResult\u003c/code\u003e response. This value indicates the status of the metadata table. The status values are:\u003cbr/\u003e\u003ccode\u003eCREATING\u003c/code\u003e - The metadata table is in the process of being created in the specified table bucket.\u003cbr/\u003e\u003ccode\u003eACTIVE\u003c/code\u003e - The metadata table has been created successfully and records are being delivered to the table.\u003cbr/\u003e\u003ccode\u003eFAILED\u003c/code\u003e - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records." - } - }, - "type": "object", - "required": [ - "s3TablesDestination" - ] - }, - "aws-native:s3:BucketMetadataTableError": { - "properties": { - "errorCode": { - "type": "string", - "description": "If the \u003ccode\u003eCreateBucketMetadataTableConfiguration\u003c/code\u003e request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:\u003cbr/\u003e\u003ccode\u003eAccessDeniedCreatingResources\u003c/code\u003e - You don't have sufficient permissions to create the required resources. Make sure that you have \u003ccode\u003es3tables:CreateNamespace\u003c/code\u003e, \u003ccode\u003es3tables:CreateTable\u003c/code\u003e, \u003ccode\u003es3tables:GetTable\u003c/code\u003e and \u003ccode\u003es3tables:PutTablePolicy\u003c/code\u003e permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eAccessDeniedWritingToTable\u003c/code\u003e - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eDestinationTableNotFound\u003c/code\u003e - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eServerInternalError\u003c/code\u003e - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableAlreadyExists\u003c/code\u003e - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableBucketNotFound\u003c/code\u003e - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration." - }, - "errorMessage": { - "type": "string", - "description": "If the \u003ccode\u003eCreateBucketMetadataTableConfiguration\u003c/code\u003e request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:\u003cbr/\u003e\u003ccode\u003eAccessDeniedCreatingResources\u003c/code\u003e - You don't have sufficient permissions to create the required resources. Make sure that you have \u003ccode\u003es3tables:CreateNamespace\u003c/code\u003e, \u003ccode\u003es3tables:CreateTable\u003c/code\u003e, \u003ccode\u003es3tables:GetTable\u003c/code\u003e and \u003ccode\u003es3tables:PutTablePolicy\u003c/code\u003e permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eAccessDeniedWritingToTable\u003c/code\u003e - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eDestinationTableNotFound\u003c/code\u003e - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eServerInternalError\u003c/code\u003e - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableAlreadyExists\u003c/code\u003e - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.\u003cbr/\u003e\u003ccode\u003eTableBucketNotFound\u003c/code\u003e - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration." - } - }, - "type": "object", - "required": [ - "errorCode", - "errorMessage" - ] - }, "aws-native:s3:BucketMetrics": { "description": "A container specifying replication metrics-related settings enabling replication metrics and events.", "properties": { @@ -151480,31 +152659,6 @@ "rules" ] }, - "aws-native:s3:BucketS3TablesDestination": { - "properties": { - "tableArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the \u003ccode\u003eaws_s3_metadata\u003c/code\u003e namespace in the destination table bucket." - }, - "tableBucketArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket." - }, - "tableName": { - "type": "string", - "description": "The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the \u003ccode\u003eaws_s3_metadata\u003c/code\u003e namespace in the destination table bucket." - }, - "tableNamespace": { - "type": "string", - "description": "The table bucket namespace for the metadata table in your metadata table configuration. This value is always \u003ccode\u003eaws_s3_metadata\u003c/code\u003e." - } - }, - "type": "object", - "required": [ - "tableBucketArn", - "tableName" - ] - }, "aws-native:s3:BucketServerSideEncryptionByDefault": { "description": "Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html).\n + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. \n + *Directory buckets* - Your SSE-KMS configuration can only support 1 [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per directory bucket for the lifetime of the bucket. The [managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (``aws/s3``) isn't supported. \n + *Directory buckets* - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.", "properties": { @@ -154311,7 +155465,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:DomainCustomFileSystemConfig" }, - "description": "The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio." + "description": "The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio." }, "customPosixUserConfig": { "$ref": "#/types/aws-native:sagemaker:DomainCustomPosixUserConfig", @@ -154399,7 +155553,7 @@ }, "fileSystemPath": { "type": "string", - "description": "The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below." + "description": "The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below." } }, "type": "object", @@ -155097,7 +156251,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:DomainCustomFileSystemConfig" }, - "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." + "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." }, "customPosixUserConfig": { "$ref": "#/types/aws-native:sagemaker:DomainCustomPosixUserConfig", @@ -155697,7 +156851,7 @@ }, "modelName": { "type": "string", - "description": "The name of an existing SageMaker model object in your account that you want to deploy with the inference component." + "description": "The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component." }, "startupParameters": { "$ref": "#/types/aws-native:sagemaker:InferenceComponentStartupParameters", @@ -157395,7 +158549,7 @@ "properties": { "name": { "type": "string", - "description": "The name of the result from the SageMaker training job." + "description": "The name of the result from the SageMaker AI training job." }, "notes": { "type": "string", @@ -157403,7 +158557,7 @@ }, "value": { "type": "number", - "description": "The value of a result from the SageMaker training job." + "description": "The value of a result from the SageMaker AI training job." } }, "type": "object", @@ -159703,7 +160857,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:MonitoringScheduleMonitoringInput" }, - "description": "The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint." + "description": "The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint." }, "monitoringOutputConfig": { "$ref": "#/types/aws-native:sagemaker:MonitoringScheduleMonitoringOutputConfig", @@ -160441,7 +161595,7 @@ "properties": { "defaultResourceSpec": { "$ref": "#/types/aws-native:sagemaker:SpaceResourceSpec", - "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required." + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required." }, "lifecycleConfigArns": { "type": "array", @@ -160784,7 +161938,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:SpaceCustomFileSystem" }, - "description": "A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio." + "description": "A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio." }, "jupyterLabAppSettings": { "$ref": "#/types/aws-native:sagemaker:SpaceJupyterLabAppSettings", @@ -161062,7 +162216,7 @@ }, "fileSystemPath": { "type": "string", - "description": "The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below." + "description": "The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below." } }, "type": "object", @@ -161666,7 +162820,7 @@ "items": { "$ref": "#/types/aws-native:sagemaker:UserProfileCustomFileSystemConfig" }, - "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." + "description": "The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio.\n\nSageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces." }, "customPosixUserConfig": { "$ref": "#/types/aws-native:sagemaker:UserProfileCustomPosixUserConfig", @@ -170420,6 +171574,35 @@ } ] }, + "aws-native:transfer:ServerState": { + "type": "string", + "enum": [ + { + "name": "Offline", + "value": "OFFLINE" + }, + { + "name": "Online", + "value": "ONLINE" + }, + { + "name": "Starting", + "value": "STARTING" + }, + { + "name": "Stopping", + "value": "STOPPING" + }, + { + "name": "StartFailed", + "value": "START_FAILED" + }, + { + "name": "StopFailed", + "value": "STOP_FAILED" + } + ] + }, "aws-native:transfer:ServerTag": { "properties": { "key": { @@ -171336,6 +172519,7 @@ ] }, "aws-native:vpclattice:ResourceConfigurationAuthType": { + "description": "The auth type for the resource configuration.", "type": "string", "enum": [ { @@ -171349,6 +172533,7 @@ ] }, "aws-native:vpclattice:ResourceConfigurationDefinition0Properties": { + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported.", "properties": { "ipResource": { "type": "string" @@ -171360,6 +172545,7 @@ ] }, "aws-native:vpclattice:ResourceConfigurationDefinition1Properties": { + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported.", "properties": { "arnResource": { "type": "string" @@ -171371,6 +172557,7 @@ ] }, "aws-native:vpclattice:ResourceConfigurationDefinition2Properties": { + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported.", "properties": { "dnsResource": { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationDnsResource" @@ -171414,6 +172601,7 @@ ] }, "aws-native:vpclattice:ResourceConfigurationProtocolType": { + "description": "(SINGLE, GROUP) The protocol accepted by the resource configuration.", "type": "string", "enum": [ { @@ -171425,10 +172613,12 @@ "aws-native:vpclattice:ResourceConfigurationTag": { "properties": { "key": { - "type": "string" + "type": "string", + "description": "The tag key." }, "value": { - "type": "string" + "type": "string", + "description": "The tag value." } }, "type": "object", @@ -171437,6 +172627,7 @@ ] }, "aws-native:vpclattice:ResourceConfigurationType": { + "description": "The type of resource configuration. A resource configuration can be one of the following types:\n\n- *SINGLE* - A single resource.\n- *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration.\n- *CHILD* - A single resource that is part of a group resource configuration.\n- *ARN* - An AWS resource.", "type": "string", "enum": [ { @@ -171458,6 +172649,7 @@ ] }, "aws-native:vpclattice:ResourceGatewayIpAddressType": { + "description": "The type of IP address used by the resource gateway.", "type": "string", "enum": [ { @@ -171477,10 +172669,12 @@ "aws-native:vpclattice:ResourceGatewayTag": { "properties": { "key": { - "type": "string" + "type": "string", + "description": "The tag key." }, "value": { - "type": "string" + "type": "string", + "description": "The tag value." } }, "type": "object", @@ -171743,10 +172937,12 @@ "description": "A key-value pair to associate with a resource.", "properties": { "key": { - "type": "string" + "type": "string", + "description": "The tag key." }, "value": { - "type": "string" + "type": "string", + "description": "A tag value." } }, "type": "object", @@ -171814,7 +173010,8 @@ "aws-native:vpclattice:ServiceNetworkSharingConfig": { "properties": { "enabled": { - "type": "boolean" + "type": "boolean", + "description": "Specify if the service network should be enabled for sharing." } }, "type": "object", @@ -176261,13 +177458,16 @@ "description": "Content filter config in content policy.", "properties": { "inputStrength": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength", + "description": "The strength of the input for the guardrail content filter." }, "outputStrength": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailFilterStrength", + "description": "The output strength of the guardrail content filter." }, "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContentFilterType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContentFilterType", + "description": "The type of the guardrail content filter." } }, "type": "object", @@ -176315,7 +177515,8 @@ "description": "The threshold for this filter." }, "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContextualGroundingFilterType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailContextualGroundingFilterType", + "description": "The type of this filter." } }, "type": "object", @@ -176364,7 +177565,8 @@ "description": "A managed words config.", "properties": { "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailManagedWordsType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailManagedWordsType", + "description": "The type of guardrail managed words." } }, "type": "object", @@ -176386,7 +177588,8 @@ "description": "Pii entity configuration.", "properties": { "action": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction", + "description": "The action of guardrail PII entity configuration." }, "type": { "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailPiiEntityType" @@ -176532,7 +177735,8 @@ "description": "A regex configuration.", "properties": { "action": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailSensitiveInformationAction", + "description": "The action of the guardrail regex configuration." }, "description": { "type": "string", @@ -176587,7 +177791,8 @@ "description": "Name of topic in topic policy" }, "type": { - "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailTopicType" + "$ref": "#/types/aws-native:wisdom:AiGuardrailGuardrailTopicType", + "description": "Type of topic in a policy." } }, "type": "object", @@ -176763,10 +177968,12 @@ "aws-native:wisdom:KnowledgeBaseBedrockFoundationModelConfiguration": { "properties": { "modelArn": { - "type": "string" + "type": "string", + "description": "The model ARN of the Bedrock foundation model." }, "parsingPrompt": { - "$ref": "#/types/aws-native:wisdom:KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties" + "$ref": "#/types/aws-native:wisdom:KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties", + "description": "The parsing prompt of the Bedrock foundation model configuration." } }, "type": "object", @@ -176775,6 +177982,7 @@ ] }, "aws-native:wisdom:KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties": { + "description": "The parsing prompt of the Bedrock foundation model configuration.", "properties": { "parsingPromptText": { "type": "string" @@ -177692,12 +178900,10 @@ "aws-native:workspaces:WorkspacesPoolTag": { "properties": { "key": { - "type": "string", - "description": "The key of the tag." + "type": "string" }, "value": { - "type": "string", - "description": "The value of the tag." + "type": "string" } }, "type": "object", @@ -182897,6 +184103,10 @@ "type": "string", "description": "The configuration profile ID" }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:ConfigurationProfileDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the configuration profile." @@ -182955,6 +184165,10 @@ "type": "string", "description": "The application ID." }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:ConfigurationProfileDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the configuration profile." @@ -183103,6 +184317,10 @@ "description": "The application ID.", "replaceOnChanges": true }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:EnvironmentDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the environment." @@ -183141,6 +184359,10 @@ "type": "string", "description": "The application ID." }, + "deletionProtectionCheck": { + "$ref": "#/types/aws-native:appconfig:EnvironmentDeletionProtectionCheck", + "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html" + }, "description": { "type": "string", "description": "A description of the environment." @@ -189443,9 +190665,6 @@ "aws-native:batch:JobDefinition": { "description": "Resource Type definition for AWS::Batch::JobDefinition", "properties": { - "awsId": { - "type": "string" - }, "containerProperties": { "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties", "description": "An object with properties specific to Amazon ECS-based jobs. When `containerProperties` is used in the job definition, it can't be used in addition to `eksProperties` , `ecsProperties` , or `nodeProperties` ." @@ -189468,8 +190687,11 @@ "description": "An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` .\n\n\u003e If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead." }, "parameters": { - "$ref": "pulumi.json#/Any", - "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* .\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* ." }, "platformCapabilities": { "type": "array", @@ -189491,11 +190713,14 @@ "description": "The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority." }, "tags": { - "$ref": "pulumi.json#/Any", - "description": "The tags that are applied to the job definition.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A key-value pair to associate with a resource." }, "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout", + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", "description": "The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished." }, "type": { @@ -189505,7 +190730,6 @@ }, "type": "object", "required": [ - "awsId", "type" ], "inputProperties": { @@ -189530,8 +190754,11 @@ "description": "An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` .\n\n\u003e If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead." }, "parameters": { - "$ref": "pulumi.json#/Any", - "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* .\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* ." }, "platformCapabilities": { "type": "array", @@ -189553,11 +190780,14 @@ "description": "The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority." }, "tags": { - "$ref": "pulumi.json#/Any", - "description": "The tags that are applied to the job definition.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A key-value pair to associate with a resource." }, "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout", + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", "description": "The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished." }, "type": { @@ -191172,6 +192402,10 @@ "aws-native:cassandra:Keyspace": { "description": "Resource schema for AWS::Cassandra::Keyspace\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 myNewKeyspace = new AwsNative.Cassandra.Keyspace(\"myNewKeyspace\", new()\n {\n KeyspaceName = \"MyNewKeyspace\",\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"tag1\",\n Value = \"val1\",\n },\n new AwsNative.Inputs.TagArgs\n {\n Key = \"tag2\",\n Value = \"val2\",\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/cassandra\"\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 := cassandra.NewKeyspace(ctx, \"myNewKeyspace\", \u0026cassandra.KeyspaceArgs{\n\t\t\tKeyspaceName: pulumi.String(\"MyNewKeyspace\"),\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag1\"),\n\t\t\t\t\tValue: pulumi.String(\"val1\"),\n\t\t\t\t},\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag2\"),\n\t\t\t\t\tValue: pulumi.String(\"val2\"),\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 myNewKeyspace = new aws_native.cassandra.Keyspace(\"myNewKeyspace\", {\n keyspaceName: \"MyNewKeyspace\",\n tags: [\n {\n key: \"tag1\",\n value: \"val1\",\n },\n {\n key: \"tag2\",\n value: \"val2\",\n },\n ],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nmy_new_keyspace = aws_native.cassandra.Keyspace(\"myNewKeyspace\",\n keyspace_name=\"MyNewKeyspace\",\n tags=[\n {\n \"key\": \"tag1\",\n \"value\": \"val1\",\n },\n {\n \"key\": \"tag2\",\n \"value\": \"val2\",\n },\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 multiRegionKeyspace = new AwsNative.Cassandra.Keyspace(\"multiRegionKeyspace\", new()\n {\n KeyspaceName = \"MultiRegionKeyspace\",\n ReplicationSpecification = new AwsNative.Cassandra.Inputs.KeyspaceReplicationSpecificationArgs\n {\n ReplicationStrategy = AwsNative.Cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MultiRegion,\n RegionList = new[]\n {\n AwsNative.Cassandra.KeyspaceRegionListItem.UsEast1,\n AwsNative.Cassandra.KeyspaceRegionListItem.UsWest2,\n AwsNative.Cassandra.KeyspaceRegionListItem.EuWest1,\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/cassandra\"\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 := cassandra.NewKeyspace(ctx, \"multiRegionKeyspace\", \u0026cassandra.KeyspaceArgs{\n\t\t\tKeyspaceName: pulumi.String(\"MultiRegionKeyspace\"),\n\t\t\tReplicationSpecification: \u0026cassandra.KeyspaceReplicationSpecificationArgs{\n\t\t\t\tReplicationStrategy: cassandra.KeyspaceReplicationSpecificationReplicationStrategyMultiRegion,\n\t\t\t\tRegionList: cassandra.KeyspaceRegionListItemArray{\n\t\t\t\t\tcassandra.KeyspaceRegionListItemUsEast1,\n\t\t\t\t\tcassandra.KeyspaceRegionListItemUsWest2,\n\t\t\t\t\tcassandra.KeyspaceRegionListItemEuWest1,\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 multiRegionKeyspace = new aws_native.cassandra.Keyspace(\"multiRegionKeyspace\", {\n keyspaceName: \"MultiRegionKeyspace\",\n replicationSpecification: {\n replicationStrategy: aws_native.cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MultiRegion,\n regionList: [\n aws_native.cassandra.KeyspaceRegionListItem.UsEast1,\n aws_native.cassandra.KeyspaceRegionListItem.UsWest2,\n aws_native.cassandra.KeyspaceRegionListItem.EuWest1,\n ],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nmulti_region_keyspace = aws_native.cassandra.Keyspace(\"multiRegionKeyspace\",\n keyspace_name=\"MultiRegionKeyspace\",\n replication_specification={\n \"replication_strategy\": aws_native.cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MULTI_REGION,\n \"region_list\": [\n aws_native.cassandra.KeyspaceRegionListItem.US_EAST1,\n aws_native.cassandra.KeyspaceRegionListItem.US_WEST2,\n aws_native.cassandra.KeyspaceRegionListItem.EU_WEST1,\n ],\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 multiRegionKeyspace = new AwsNative.Cassandra.Keyspace(\"multiRegionKeyspace\", new()\n {\n KeyspaceName = \"MultiRegionKeyspace\",\n ReplicationSpecification = new AwsNative.Cassandra.Inputs.KeyspaceReplicationSpecificationArgs\n {\n ReplicationStrategy = AwsNative.Cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MultiRegion,\n RegionList = new[]\n {\n AwsNative.Cassandra.KeyspaceRegionListItem.UsEast1,\n AwsNative.Cassandra.KeyspaceRegionListItem.UsWest2,\n AwsNative.Cassandra.KeyspaceRegionListItem.EuWest1,\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/cassandra\"\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 := cassandra.NewKeyspace(ctx, \"multiRegionKeyspace\", \u0026cassandra.KeyspaceArgs{\n\t\t\tKeyspaceName: pulumi.String(\"MultiRegionKeyspace\"),\n\t\t\tReplicationSpecification: \u0026cassandra.KeyspaceReplicationSpecificationArgs{\n\t\t\t\tReplicationStrategy: cassandra.KeyspaceReplicationSpecificationReplicationStrategyMultiRegion,\n\t\t\t\tRegionList: cassandra.KeyspaceRegionListItemArray{\n\t\t\t\t\tcassandra.KeyspaceRegionListItemUsEast1,\n\t\t\t\t\tcassandra.KeyspaceRegionListItemUsWest2,\n\t\t\t\t\tcassandra.KeyspaceRegionListItemEuWest1,\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 multiRegionKeyspace = new aws_native.cassandra.Keyspace(\"multiRegionKeyspace\", {\n keyspaceName: \"MultiRegionKeyspace\",\n replicationSpecification: {\n replicationStrategy: aws_native.cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MultiRegion,\n regionList: [\n aws_native.cassandra.KeyspaceRegionListItem.UsEast1,\n aws_native.cassandra.KeyspaceRegionListItem.UsWest2,\n aws_native.cassandra.KeyspaceRegionListItem.EuWest1,\n ],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nmulti_region_keyspace = aws_native.cassandra.Keyspace(\"multiRegionKeyspace\",\n keyspace_name=\"MultiRegionKeyspace\",\n replication_specification={\n \"replication_strategy\": aws_native.cassandra.KeyspaceReplicationSpecificationReplicationStrategy.MULTI_REGION,\n \"region_list\": [\n aws_native.cassandra.KeyspaceRegionListItem.US_EAST1,\n aws_native.cassandra.KeyspaceRegionListItem.US_WEST2,\n aws_native.cassandra.KeyspaceRegionListItem.EU_WEST1,\n ],\n })\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { + "clientSideTimestampsEnabled": { + "type": "boolean", + "description": "Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again." + }, "keyspaceName": { "type": "string", "description": "Name for Cassandra keyspace", @@ -191179,8 +192413,7 @@ }, "replicationSpecification": { "$ref": "#/types/aws-native:cassandra:KeyspaceReplicationSpecification", - "description": "Specifies the `ReplicationStrategy` of a keyspace. The options are:\n\n- `SINGLE_REGION` for a single Region keyspace (optional) or\n- `MULTI_REGION` for a multi-Region keyspace\n\nIf no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in.", - "replaceOnChanges": true + "description": "Specifies the `ReplicationStrategy` of a keyspace. The options are:\n\n- `SINGLE_REGION` for a single Region keyspace (optional) or\n- `MULTI_REGION` for a multi-Region keyspace\n\nIf no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in." }, "tags": { "type": "array", @@ -191192,6 +192425,10 @@ }, "type": "object", "inputProperties": { + "clientSideTimestampsEnabled": { + "type": "boolean", + "description": "Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again." + }, "keyspaceName": { "type": "string", "description": "Name for Cassandra keyspace" @@ -191364,6 +192601,87 @@ "partitionKeyColumns" ] }, + "aws-native:cassandra:Type": { + "description": "Resource schema for AWS::Cassandra::Type", + "properties": { + "directParentTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of parent User-Defined Types that directly reference the User-Defined Type in their fields." + }, + "directReferringTables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Tables that directly reference the User-Defined Type in their columns." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cassandra:TypeField" + }, + "description": "Field definitions of the User-Defined Type", + "replaceOnChanges": true + }, + "keyspaceArn": { + "type": "string", + "description": "ARN of the Keyspace which contains the User-Defined Type." + }, + "keyspaceName": { + "type": "string", + "description": "Name of the Keyspace which contains the User-Defined Type.", + "replaceOnChanges": true + }, + "lastModifiedTimestamp": { + "type": "number", + "description": "Timestamp of the last time the User-Defined Type's meta data was modified." + }, + "maxNestingDepth": { + "type": "integer", + "description": "Maximum nesting depth of the User-Defined Type across the field types." + }, + "typeName": { + "type": "string", + "description": "Name of the User-Defined Type.", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "directParentTypes", + "directReferringTables", + "fields", + "keyspaceArn", + "keyspaceName", + "lastModifiedTimestamp", + "maxNestingDepth", + "typeName" + ], + "inputProperties": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cassandra:TypeField" + }, + "description": "Field definitions of the User-Defined Type" + }, + "keyspaceName": { + "type": "string", + "description": "Name of the Keyspace which contains the User-Defined Type." + }, + "typeName": { + "type": "string", + "description": "Name of the User-Defined Type." + } + }, + "requiredInputs": [ + "fields", + "keyspaceName" + ] + }, "aws-native:ce:AnomalyMonitor": { "description": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. You can use Cost Anomaly Detection by creating monitor.\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 anomalyServiceMonitor = new AwsNative.Ce.AnomalyMonitor(\"anomalyServiceMonitor\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Dimensional,\n MonitorDimension = AwsNative.Ce.AnomalyMonitorMonitorDimension.Service,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"anomalyServiceMonitor\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeDimensional,\n\t\t\tMonitorDimension: ce.AnomalyMonitorMonitorDimensionService,\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 anomalyServiceMonitor = new aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Dimensional,\n monitorDimension: aws_native.ce.AnomalyMonitorMonitorDimension.Service,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nanomaly_service_monitor = aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.DIMENSIONAL,\n monitor_dimension=aws_native.ce.AnomalyMonitorMonitorDimension.SERVICE)\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 anomalyServiceMonitor = new AwsNative.Ce.AnomalyMonitor(\"anomalyServiceMonitor\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Dimensional,\n MonitorDimension = AwsNative.Ce.AnomalyMonitorMonitorDimension.Service,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"anomalyServiceMonitor\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeDimensional,\n\t\t\tMonitorDimension: ce.AnomalyMonitorMonitorDimensionService,\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 anomalyServiceMonitor = new aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Dimensional,\n monitorDimension: aws_native.ce.AnomalyMonitorMonitorDimension.Service,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nanomaly_service_monitor = aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.DIMENSIONAL,\n monitor_dimension=aws_native.ce.AnomalyMonitorMonitorDimension.SERVICE)\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 customAnomalyMonitorWithTags = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithTags\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithTags\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\"),\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 customAnomalyMonitorWithTags = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithTags\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_tags = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithTags\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\")\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 customAnomalyMonitorWithTags = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithTags\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithTags\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\"),\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 customAnomalyMonitorWithTags = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithTags\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_tags = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithTags\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Tags\\\" : { \\\"Key\\\" : \\\"Tag Key\\\", \\\"Values\\\" : [ \\\"TagValue1\\\", \\\"TagValue2\\\" ] } }\")\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 customAnomalyMonitorWithCC = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithCC\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithCC\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\"),\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 customAnomalyMonitorWithCC = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithCC\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_cc = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithCC\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\")\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 customAnomalyMonitorWithCC = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithCC\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithCC\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\"),\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 customAnomalyMonitorWithCC = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithCC\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_cc = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithCC\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"CostCategories\\\" : { \\\"Key\\\" : \\\"CostCategoryKey\\\", \\\"Values\\\" : [ \\\"CostCategoryValue\\\" ] } }\")\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 customAnomalyMonitorWithLinkedAccount = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithLinkedAccount\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\"),\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 customAnomalyMonitorWithLinkedAccount = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_linked_account = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\")\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 customAnomalyMonitorWithLinkedAccount = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\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 := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithLinkedAccount\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\"),\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 customAnomalyMonitorWithLinkedAccount = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_linked_account = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\")\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 customAnomalyMonitorWithLinkedAccount = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n });\n\n var anomalyServiceMonitor = new AwsNative.Ce.AnomalyMonitor(\"anomalyServiceMonitor\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Dimensional,\n MonitorDimension = AwsNative.Ce.AnomalyMonitorMonitorDimension.Service,\n });\n\n var anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n Threshold = 100,\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\n MonitorArnList = new[]\n {\n customAnomalyMonitorWithLinkedAccount.Id,\n anomalyServiceMonitor.Id,\n },\n Subscribers = new[]\n {\n new AwsNative.Ce.Inputs.AnomalySubscriptionSubscriberArgs\n {\n Type = AwsNative.Ce.AnomalySubscriptionSubscriberType.Email,\n Address = \"abc@def.com\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcustomAnomalyMonitorWithLinkedAccount, err := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithLinkedAccount\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tanomalyServiceMonitor, err := ce.NewAnomalyMonitor(ctx, \"anomalyServiceMonitor\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeDimensional,\n\t\t\tMonitorDimension: ce.AnomalyMonitorMonitorDimensionService,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ce.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThreshold: pulumi.Float64(100),\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\n\t\t\tMonitorArnList: pulumi.StringArray{\n\t\t\t\tcustomAnomalyMonitorWithLinkedAccount.ID(),\n\t\t\t\tanomalyServiceMonitor.ID(),\n\t\t\t},\n\t\t\tSubscribers: ce.AnomalySubscriptionSubscriberArray{\n\t\t\t\t\u0026ce.AnomalySubscriptionSubscriberArgs{\n\t\t\t\t\tType: ce.AnomalySubscriptionSubscriberTypeEmail,\n\t\t\t\t\tAddress: pulumi.String(\"abc@def.com\"),\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 customAnomalyMonitorWithLinkedAccount = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n});\nconst anomalyServiceMonitor = new aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Dimensional,\n monitorDimension: aws_native.ce.AnomalyMonitorMonitorDimension.Service,\n});\nconst anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n threshold: 100,\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n monitorArnList: [\n customAnomalyMonitorWithLinkedAccount.id,\n anomalyServiceMonitor.id,\n ],\n subscribers: [{\n type: aws_native.ce.AnomalySubscriptionSubscriberType.Email,\n address: \"abc@def.com\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_linked_account = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\")\nanomaly_service_monitor = aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.DIMENSIONAL,\n monitor_dimension=aws_native.ce.AnomalyMonitorMonitorDimension.SERVICE)\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold=100,\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY,\n monitor_arn_list=[\n custom_anomaly_monitor_with_linked_account.id,\n anomaly_service_monitor.id,\n ],\n subscribers=[{\n \"type\": aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n \"address\": \"abc@def.com\",\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 customAnomalyMonitorWithLinkedAccount = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n });\n\n var anomalyServiceMonitor = new AwsNative.Ce.AnomalyMonitor(\"anomalyServiceMonitor\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Dimensional,\n MonitorDimension = AwsNative.Ce.AnomalyMonitorMonitorDimension.Service,\n });\n\n var anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n Threshold = 100,\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\n MonitorArnList = new[]\n {\n customAnomalyMonitorWithLinkedAccount.Id,\n anomalyServiceMonitor.Id,\n },\n Subscribers = new[]\n {\n new AwsNative.Ce.Inputs.AnomalySubscriptionSubscriberArgs\n {\n Type = AwsNative.Ce.AnomalySubscriptionSubscriberType.Email,\n Address = \"abc@def.com\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcustomAnomalyMonitorWithLinkedAccount, err := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithLinkedAccount\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tanomalyServiceMonitor, err := ce.NewAnomalyMonitor(ctx, \"anomalyServiceMonitor\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeDimensional,\n\t\t\tMonitorDimension: ce.AnomalyMonitorMonitorDimensionService,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ce.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThreshold: pulumi.Float64(100),\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\n\t\t\tMonitorArnList: pulumi.StringArray{\n\t\t\t\tcustomAnomalyMonitorWithLinkedAccount.ID(),\n\t\t\t\tanomalyServiceMonitor.ID(),\n\t\t\t},\n\t\t\tSubscribers: ce.AnomalySubscriptionSubscriberArray{\n\t\t\t\t\u0026ce.AnomalySubscriptionSubscriberArgs{\n\t\t\t\t\tType: ce.AnomalySubscriptionSubscriberTypeEmail,\n\t\t\t\t\tAddress: pulumi.String(\"abc@def.com\"),\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 customAnomalyMonitorWithLinkedAccount = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n});\nconst anomalyServiceMonitor = new aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Dimensional,\n monitorDimension: aws_native.ce.AnomalyMonitorMonitorDimension.Service,\n});\nconst anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n threshold: 100,\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n monitorArnList: [\n customAnomalyMonitorWithLinkedAccount.id,\n anomalyServiceMonitor.id,\n ],\n subscribers: [{\n type: aws_native.ce.AnomalySubscriptionSubscriberType.Email,\n address: \"abc@def.com\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_linked_account = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\")\nanomaly_service_monitor = aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.DIMENSIONAL,\n monitor_dimension=aws_native.ce.AnomalyMonitorMonitorDimension.SERVICE)\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold=100,\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY,\n monitor_arn_list=[\n custom_anomaly_monitor_with_linked_account.id,\n anomaly_service_monitor.id,\n ],\n subscribers=[{\n \"type\": aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n \"address\": \"abc@def.com\",\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 customAnomalyMonitorWithLinkedAccount = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n });\n\n var anomalyServiceMonitor = new AwsNative.Ce.AnomalyMonitor(\"anomalyServiceMonitor\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Dimensional,\n MonitorDimension = AwsNative.Ce.AnomalyMonitorMonitorDimension.Service,\n });\n\n var anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n Threshold = 100,\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\n MonitorArnList = new[]\n {\n customAnomalyMonitorWithLinkedAccount.Id,\n anomalyServiceMonitor.Id,\n },\n Subscribers = new[]\n {\n new AwsNative.Ce.Inputs.AnomalySubscriptionSubscriberArgs\n {\n Type = AwsNative.Ce.AnomalySubscriptionSubscriberType.Email,\n Address = \"abc@def.com\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcustomAnomalyMonitorWithLinkedAccount, err := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithLinkedAccount\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tanomalyServiceMonitor, err := ce.NewAnomalyMonitor(ctx, \"anomalyServiceMonitor\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeDimensional,\n\t\t\tMonitorDimension: ce.AnomalyMonitorMonitorDimensionService,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ce.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThreshold: pulumi.Float64(100),\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\n\t\t\tMonitorArnList: pulumi.StringArray{\n\t\t\t\tcustomAnomalyMonitorWithLinkedAccount.ID(),\n\t\t\t\tanomalyServiceMonitor.ID(),\n\t\t\t},\n\t\t\tSubscribers: ce.AnomalySubscriptionSubscriberArray{\n\t\t\t\t\u0026ce.AnomalySubscriptionSubscriberArgs{\n\t\t\t\t\tType: ce.AnomalySubscriptionSubscriberTypeEmail,\n\t\t\t\t\tAddress: pulumi.String(\"abc@def.com\"),\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 customAnomalyMonitorWithLinkedAccount = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n});\nconst anomalyServiceMonitor = new aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Dimensional,\n monitorDimension: aws_native.ce.AnomalyMonitorMonitorDimension.Service,\n});\nconst anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n threshold: 100,\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n monitorArnList: [\n customAnomalyMonitorWithLinkedAccount.id,\n anomalyServiceMonitor.id,\n ],\n subscribers: [{\n type: aws_native.ce.AnomalySubscriptionSubscriberType.Email,\n address: \"abc@def.com\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_linked_account = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\")\nanomaly_service_monitor = aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.DIMENSIONAL,\n monitor_dimension=aws_native.ce.AnomalyMonitorMonitorDimension.SERVICE)\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold=100,\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY,\n monitor_arn_list=[\n custom_anomaly_monitor_with_linked_account.id,\n anomaly_service_monitor.id,\n ],\n subscribers=[{\n \"type\": aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n \"address\": \"abc@def.com\",\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 customAnomalyMonitorWithLinkedAccount = new AwsNative.Ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Custom,\n MonitorSpecification = \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n });\n\n var anomalyServiceMonitor = new AwsNative.Ce.AnomalyMonitor(\"anomalyServiceMonitor\", new()\n {\n MonitorName = \"MonitorName\",\n MonitorType = AwsNative.Ce.AnomalyMonitorMonitorType.Dimensional,\n MonitorDimension = AwsNative.Ce.AnomalyMonitorMonitorDimension.Service,\n });\n\n var anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n Threshold = 100,\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\n MonitorArnList = new[]\n {\n customAnomalyMonitorWithLinkedAccount.Id,\n anomalyServiceMonitor.Id,\n },\n Subscribers = new[]\n {\n new AwsNative.Ce.Inputs.AnomalySubscriptionSubscriberArgs\n {\n Type = AwsNative.Ce.AnomalySubscriptionSubscriberType.Email,\n Address = \"abc@def.com\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ce\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcustomAnomalyMonitorWithLinkedAccount, err := ce.NewAnomalyMonitor(ctx, \"customAnomalyMonitorWithLinkedAccount\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeCustom,\n\t\t\tMonitorSpecification: pulumi.String(\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tanomalyServiceMonitor, err := ce.NewAnomalyMonitor(ctx, \"anomalyServiceMonitor\", \u0026ce.AnomalyMonitorArgs{\n\t\t\tMonitorName: pulumi.String(\"MonitorName\"),\n\t\t\tMonitorType: ce.AnomalyMonitorMonitorTypeDimensional,\n\t\t\tMonitorDimension: ce.AnomalyMonitorMonitorDimensionService,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ce.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThreshold: pulumi.Float64(100),\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\n\t\t\tMonitorArnList: pulumi.StringArray{\n\t\t\t\tcustomAnomalyMonitorWithLinkedAccount.ID(),\n\t\t\t\tanomalyServiceMonitor.ID(),\n\t\t\t},\n\t\t\tSubscribers: ce.AnomalySubscriptionSubscriberArray{\n\t\t\t\t\u0026ce.AnomalySubscriptionSubscriberArgs{\n\t\t\t\t\tType: ce.AnomalySubscriptionSubscriberTypeEmail,\n\t\t\t\t\tAddress: pulumi.String(\"abc@def.com\"),\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 customAnomalyMonitorWithLinkedAccount = new aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Custom,\n monitorSpecification: \" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\",\n});\nconst anomalyServiceMonitor = new aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\", {\n monitorName: \"MonitorName\",\n monitorType: aws_native.ce.AnomalyMonitorMonitorType.Dimensional,\n monitorDimension: aws_native.ce.AnomalyMonitorMonitorDimension.Service,\n});\nconst anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n threshold: 100,\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n monitorArnList: [\n customAnomalyMonitorWithLinkedAccount.id,\n anomalyServiceMonitor.id,\n ],\n subscribers: [{\n type: aws_native.ce.AnomalySubscriptionSubscriberType.Email,\n address: \"abc@def.com\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ncustom_anomaly_monitor_with_linked_account = aws_native.ce.AnomalyMonitor(\"customAnomalyMonitorWithLinkedAccount\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.CUSTOM,\n monitor_specification=\" { \\\"Dimensions\\\" : { \\\"Key\\\" : \\\"LINKED_ACCOUNT\\\", \\\"Values\\\" : [ \\\"123456789012\\\", \\\"123456789013\\\" ] } }\")\nanomaly_service_monitor = aws_native.ce.AnomalyMonitor(\"anomalyServiceMonitor\",\n monitor_name=\"MonitorName\",\n monitor_type=aws_native.ce.AnomalyMonitorMonitorType.DIMENSIONAL,\n monitor_dimension=aws_native.ce.AnomalyMonitorMonitorDimension.SERVICE)\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold=100,\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY,\n monitor_arn_list=[\n custom_anomaly_monitor_with_linked_account.id,\n anomaly_service_monitor.id,\n ],\n subscribers=[{\n \"type\": aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n \"address\": \"abc@def.com\",\n }])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { @@ -192296,7 +193614,17 @@ "description": "A name for the configured table." }, "tableReference": { - "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference", + "oneOf": [ + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference0Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference1Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference2Properties" + } + ], "description": "The table that this configured table represents.", "replaceOnChanges": true }, @@ -192345,7 +193673,17 @@ "description": "A name for the configured table." }, "tableReference": { - "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference", + "oneOf": [ + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference0Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference1Properties" + }, + { + "$ref": "#/types/aws-native:cleanrooms:ConfiguredTableTableReference2Properties" + } + ], "description": "The table that this configured table represents." }, "tags": { @@ -193773,7 +195111,7 @@ "items": { "$ref": "#/types/aws-native:cloudformation:StackCapabilitiesItem" }, - "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html)\n- [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html)\n- [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html)\n- [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html)\n\nFor more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. \n\nFor more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) ." + "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)\n- [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)\n- [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)\n- [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)\n\nFor more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. \n\nFor more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* ." }, "changeSetId": { "type": "string", @@ -193793,7 +195131,7 @@ }, "enableTerminationProtection": { "type": "boolean", - "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack." + "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack." }, "lastUpdateTime": { "type": "string", @@ -193826,7 +195164,7 @@ }, "roleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials." + "description": "The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials." }, "rootId": { "type": "string", @@ -193843,7 +195181,7 @@ }, "stackPolicyBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "stackPolicyUrl": { "type": "string", @@ -193866,11 +195204,11 @@ }, "templateBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "templateUrl": { "type": "string", - "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) .\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." + "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." }, "timeoutInMinutes": { "type": "integer", @@ -193895,7 +195233,7 @@ "items": { "$ref": "#/types/aws-native:cloudformation:StackCapabilitiesItem" }, - "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html)\n- [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html)\n- [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html)\n- [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html)\n\nFor more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. \n\nFor more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) ." + "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)\n- [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)\n- [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)\n- [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)\n\nFor more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. \n\nFor more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* ." }, "description": { "type": "string", @@ -193907,7 +195245,7 @@ }, "enableTerminationProtection": { "type": "boolean", - "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack." + "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack." }, "notificationArns": { "type": "array", @@ -193925,7 +195263,7 @@ }, "roleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials." + "description": "The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials." }, "stackName": { "type": "string", @@ -193933,7 +195271,7 @@ }, "stackPolicyBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "stackPolicyUrl": { "type": "string", @@ -193952,11 +195290,11 @@ }, "templateBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "templateUrl": { "type": "string", - "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) .\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." + "description": "Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.\n\nWhether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced." }, "timeoutInMinutes": { "type": "integer", @@ -194000,7 +195338,7 @@ }, "operationPreferences": { "$ref": "#/types/aws-native:cloudformation:StackSetOperationPreferences", - "description": "The user-specified preferences for how AWS CloudFormation performs a stack set operation." + "description": "The user-specified preferences for how CloudFormation performs a stack set operation." }, "parameters": { "type": "array", @@ -194086,7 +195424,7 @@ }, "operationPreferences": { "$ref": "#/types/aws-native:cloudformation:StackSetOperationPreferences", - "description": "The user-specified preferences for how AWS CloudFormation performs a stack set operation." + "description": "The user-specified preferences for how CloudFormation performs a stack set operation." }, "parameters": { "type": "array", @@ -200253,6 +201591,10 @@ "$ref": "#/types/aws-native:connect:QueueOutboundCallerConfig", "description": "The outbound caller ID name, number, and outbound whisper flow." }, + "outboundEmailConfig": { + "$ref": "#/types/aws-native:connect:QueueOutboundEmailConfig", + "description": "The outbound email address ID." + }, "queueArn": { "type": "string", "description": "The Amazon Resource Name (ARN) for the queue." @@ -200313,6 +201655,10 @@ "$ref": "#/types/aws-native:connect:QueueOutboundCallerConfig", "description": "The outbound caller ID name, number, and outbound whisper flow." }, + "outboundEmailConfig": { + "$ref": "#/types/aws-native:connect:QueueOutboundEmailConfig", + "description": "The outbound email address ID." + }, "quickConnectArns": { "type": "array", "items": { @@ -200519,15 +201865,15 @@ ] }, "aws-native:connect:Rule": { - "description": "Resource Type definition for AWS:Connect::Rule", + "description": "Creates a rule for the specified CON instance.", "properties": { "actions": { "$ref": "#/types/aws-native:connect:RuleActions", - "description": "The list of actions that will be executed when a rule is triggered." + "description": "A list of actions to be run when the rule is triggered." }, "function": { "type": "string", - "description": "The conditions of a rule." + "description": "The conditions of the rule." }, "instanceArn": { "type": "string", @@ -200540,7 +201886,7 @@ }, "publishStatus": { "$ref": "#/types/aws-native:connect:RulePublishStatus", - "description": "The publish status of a rule, either draft or published." + "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``" }, "ruleArn": { "type": "string", @@ -200551,11 +201897,11 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "One or more tags." + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }." }, "triggerEventSource": { "$ref": "#/types/aws-native:connect:RuleTriggerEventSource", - "description": "The event source that triggers the rule.", + "description": "The event source to trigger the rule.", "replaceOnChanges": true } }, @@ -200572,11 +201918,11 @@ "inputProperties": { "actions": { "$ref": "#/types/aws-native:connect:RuleActions", - "description": "The list of actions that will be executed when a rule is triggered." + "description": "A list of actions to be run when the rule is triggered." }, "function": { "type": "string", - "description": "The conditions of a rule." + "description": "The conditions of the rule." }, "instanceArn": { "type": "string", @@ -200588,18 +201934,18 @@ }, "publishStatus": { "$ref": "#/types/aws-native:connect:RulePublishStatus", - "description": "The publish status of a rule, either draft or published." + "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "One or more tags." + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }." }, "triggerEventSource": { "$ref": "#/types/aws-native:connect:RuleTriggerEventSource", - "description": "The event source that triggers the rule." + "description": "The event source to trigger the rule." } }, "requiredInputs": [ @@ -214836,6 +216182,12 @@ }, "description": "(Interface endpoints) The DNS entries for the endpoint. Each entry is a combination of the hosted zone ID and the DNS name. The entries are ordered as follows: regional public DNS, zonal public DNS, private DNS, and wildcard DNS. This order is not enforced for AWS Marketplace services.\n\nThe following is an example. In the first entry, the hosted zone ID is Z1HUB23UULQXV and the DNS name is vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com.\n\n[\"Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com\", \"Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3-us-east-1a.ec2.us-east-1.vpce.amazonaws.com\", \"Z1C12344VYDITB0:ec2.us-east-1.amazonaws.com\"]\n\nIf you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change." }, + "dnsOptions": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecification" + }, + "ipAddressType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointIpAddressType" + }, "networkInterfaceIds": { "type": "array", "items": { @@ -214851,6 +216203,10 @@ "type": "boolean", "description": "Indicate whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, ``kinesis.us-east-1.amazonaws.com``), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.\n To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``.\n This property is supported only for interface endpoints.\n Default: ``false``" }, + "resourceConfigurationArn": { + "type": "string", + "replaceOnChanges": true + }, "routeTableIds": { "type": "array", "items": { @@ -214870,6 +216226,10 @@ "description": "The name of the endpoint service.", "replaceOnChanges": true }, + "serviceNetworkArn": { + "type": "string", + "replaceOnChanges": true + }, "subnetIds": { "type": "array", "items": { @@ -214894,10 +216254,15 @@ "creationTimestamp", "dnsEntries", "networkInterfaceIds", - "serviceName", "vpcId" ], "inputProperties": { + "dnsOptions": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecification" + }, + "ipAddressType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointIpAddressType" + }, "policyDocument": { "$ref": "pulumi.json#/Any", "description": "An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints.\n For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section:\n ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ \"Version\":\"2012-10-17\", \"Statement\": [{ \"Effect\":\"Allow\", \"Principal\":\"*\", \"Action\":[\"logs:Describe*\",\"logs:Get*\",\"logs:List*\",\"logs:FilterLogEvents\"], \"Resource\":\"*\" }] }'``\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::EC2::VPCEndpoint` for more information about the expected schema for this property." @@ -214906,6 +216271,9 @@ "type": "boolean", "description": "Indicate whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, ``kinesis.us-east-1.amazonaws.com``), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.\n To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``.\n This property is supported only for interface endpoints.\n Default: ``false``" }, + "resourceConfigurationArn": { + "type": "string" + }, "routeTableIds": { "type": "array", "items": { @@ -214924,6 +216292,9 @@ "type": "string", "description": "The name of the endpoint service." }, + "serviceNetworkArn": { + "type": "string" + }, "subnetIds": { "type": "array", "items": { @@ -214941,7 +216312,6 @@ } }, "requiredInputs": [ - "serviceName", "vpcId" ] }, @@ -216084,7 +217454,7 @@ "properties": { "availabilityZoneRebalancing": { "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing", - "description": "Indicates whether to use Availability Zone rebalancing for the service.\n\nFor more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* ." + "description": "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*." }, "capacityProviderStrategy": { "type": "array", @@ -216121,7 +217491,7 @@ }, "healthCheckGracePeriodSeconds": { "type": "integer", - "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used.\n If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html).\n If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." + "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.\n If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." }, "launchType": { "$ref": "#/types/aws-native:ecs:ServiceLaunchType", @@ -216229,7 +217599,7 @@ "inputProperties": { "availabilityZoneRebalancing": { "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing", - "description": "Indicates whether to use Availability Zone rebalancing for the service.\n\nFor more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* ." + "description": "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*." }, "capacityProviderStrategy": { "type": "array", @@ -216264,7 +217634,7 @@ }, "healthCheckGracePeriodSeconds": { "type": "integer", - "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used.\n If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html).\n If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." + "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.\n If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." }, "launchType": { "$ref": "#/types/aws-native:ecs:ServiceLaunchType", @@ -219901,6 +221271,10 @@ }, "description": "The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation." }, + "schedulerConfiguration": { + "$ref": "#/types/aws-native:emrserverless:ApplicationSchedulerConfiguration", + "description": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above." + }, "tags": { "type": "array", "items": { @@ -219983,6 +221357,10 @@ }, "description": "The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation." }, + "schedulerConfiguration": { + "$ref": "#/types/aws-native:emrserverless:ApplicationSchedulerConfiguration", + "description": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above." + }, "tags": { "type": "array", "items": { @@ -240578,6 +241956,12 @@ "$ref": "pulumi.json#/Any", "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." }, + "fieldIndexPolicies": { + "type": "array", + "items": { + "$ref": "pulumi.json#/Any" + } + }, "kmsKeyId": { "type": "string", "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)" @@ -240612,6 +241996,12 @@ "$ref": "pulumi.json#/Any", "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." }, + "fieldIndexPolicies": { + "type": "array", + "items": { + "$ref": "pulumi.json#/Any" + } + }, "kmsKeyId": { "type": "string", "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)" @@ -240672,6 +242062,10 @@ "aws-native:logs:MetricFilter": { "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": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "filterName": { "type": "string", "description": "The name of the metric filter.", @@ -240701,6 +242095,10 @@ "metricTransformations" ], "inputProperties": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "filterName": { "type": "string", "description": "The name of the metric filter." @@ -240745,6 +242143,10 @@ "type": "string", "description": "Unique identifier of a query definition" }, + "queryLanguage": { + "$ref": "#/types/aws-native:logs:QueryDefinitionQueryLanguage", + "description": "Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default." + }, "queryString": { "type": "string", "description": "The query string to use for this definition" @@ -240768,6 +242170,10 @@ "type": "string", "description": "A name for the saved query definition" }, + "queryLanguage": { + "$ref": "#/types/aws-native:logs:QueryDefinitionQueryLanguage", + "description": "Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default." + }, "queryString": { "type": "string", "description": "The query string to use for this definition" @@ -240812,6 +242218,10 @@ "aws-native:logs:SubscriptionFilter": { "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": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "destinationArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the destination." @@ -240846,6 +242256,10 @@ "logGroupName" ], "inputProperties": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "destinationArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the destination." @@ -240877,6 +242291,45 @@ "logGroupName" ] }, + "aws-native:logs:Transformer": { + "description": "Specifies a transformer on the log group to transform logs into consistent structured and information rich format.", + "properties": { + "logGroupIdentifier": { + "type": "string", + "description": "Existing log group that you want to associate with this transformer.", + "replaceOnChanges": true + }, + "transformerConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerProcessor" + }, + "description": "List of processors in a transformer" + } + }, + "type": "object", + "required": [ + "logGroupIdentifier", + "transformerConfig" + ], + "inputProperties": { + "logGroupIdentifier": { + "type": "string", + "description": "Existing log group that you want to associate with this transformer." + }, + "transformerConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerProcessor" + }, + "description": "List of processors in a transformer" + } + }, + "requiredInputs": [ + "logGroupIdentifier", + "transformerConfig" + ] + }, "aws-native:lookoutmetrics:Alert": { "description": "Resource Type definition for AWS::LookoutMetrics::Alert", "properties": { @@ -241240,6 +242693,10 @@ "description": "The name of the environment.", "replaceOnChanges": true }, + "networkType": { + "$ref": "#/types/aws-native:m2:EnvironmentNetworkType", + "replaceOnChanges": true + }, "preferredMaintenanceWindow": { "type": "string", "description": "Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned." @@ -241318,6 +242775,9 @@ "type": "string", "description": "The name of the environment." }, + "networkType": { + "$ref": "#/types/aws-native:m2:EnvironmentNetworkType" + }, "preferredMaintenanceWindow": { "type": "string", "description": "Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned." @@ -247775,6 +249235,141 @@ "globalNetworkId" ] }, + "aws-native:networkmanager:DirectConnectGatewayAttachment": { + "description": "AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type", + "properties": { + "attachmentId": { + "type": "string", + "description": "Id of the attachment." + }, + "attachmentPolicyRuleNumber": { + "type": "integer", + "description": "The policy rule number associated with the attachment." + }, + "attachmentType": { + "type": "string", + "description": "Attachment type." + }, + "coreNetworkArn": { + "type": "string", + "description": "The ARN of a core network for the Direct Connect Gateway attachment." + }, + "coreNetworkId": { + "type": "string", + "description": "The ID of a core network for the Direct Connect Gateway attachment.", + "replaceOnChanges": true + }, + "createdAt": { + "type": "string", + "description": "Creation time of the attachment." + }, + "directConnectGatewayArn": { + "type": "string", + "description": "The ARN of the Direct Connect Gateway.", + "replaceOnChanges": true + }, + "edgeLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Regions where the edges are located." + }, + "networkFunctionGroupName": { + "type": "string", + "description": "The name of the network function group attachment." + }, + "ownerAccountId": { + "type": "string", + "description": "Owner account of the attachment." + }, + "proposedNetworkFunctionGroupChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange", + "description": "The attachment to move from one network function group to another." + }, + "proposedSegmentChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange", + "description": "The attachment to move from one segment to another." + }, + "resourceArn": { + "type": "string", + "description": "The ARN of the Resource." + }, + "segmentName": { + "type": "string", + "description": "The name of the segment attachment.." + }, + "state": { + "type": "string", + "description": "State of the attachment." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + }, + "description": "Tags for the attachment." + }, + "updatedAt": { + "type": "string", + "description": "Last update time of the attachment." + } + }, + "type": "object", + "required": [ + "attachmentId", + "attachmentPolicyRuleNumber", + "attachmentType", + "coreNetworkArn", + "coreNetworkId", + "createdAt", + "directConnectGatewayArn", + "edgeLocations", + "networkFunctionGroupName", + "ownerAccountId", + "resourceArn", + "segmentName", + "state", + "updatedAt" + ], + "inputProperties": { + "coreNetworkId": { + "type": "string", + "description": "The ID of a core network for the Direct Connect Gateway attachment." + }, + "directConnectGatewayArn": { + "type": "string", + "description": "The ARN of the Direct Connect Gateway." + }, + "edgeLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Regions where the edges are located." + }, + "proposedNetworkFunctionGroupChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange", + "description": "The attachment to move from one network function group to another." + }, + "proposedSegmentChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange", + "description": "The attachment to move from one segment to another." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + }, + "description": "Tags for the attachment." + } + }, + "requiredInputs": [ + "coreNetworkId", + "directConnectGatewayArn", + "edgeLocations" + ] + }, "aws-native:networkmanager:GlobalNetwork": { "description": "The AWS::NetworkManager::GlobalNetwork type specifies a global network of the user's account\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 globalNetwork = new AwsNative.NetworkManager.GlobalNetwork(\"globalNetwork\");\n\n var site = new AwsNative.NetworkManager.Site(\"site\", new()\n {\n GlobalNetworkId = globalNetwork.Id,\n Location = new AwsNative.NetworkManager.Inputs.SiteLocationArgs\n {\n Address = \"227 W Monroe St, Chicago, IL 60606\",\n Latitude = \"41.8\",\n Longitude = \"-87.6\",\n },\n });\n\n var link = new AwsNative.NetworkManager.Link(\"link\", new()\n {\n Description = \"Broadband link\",\n GlobalNetworkId = globalNetwork.Id,\n SiteId = site.SiteId,\n Bandwidth = new AwsNative.NetworkManager.Inputs.LinkBandwidthArgs\n {\n DownloadSpeed = 20,\n UploadSpeed = 20,\n },\n Provider = \"AnyCompany\",\n Type = \"Broadband\",\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"Name\",\n Value = \"broadband-link-1\",\n },\n },\n });\n\n var device = new AwsNative.NetworkManager.Device(\"device\", new()\n {\n Description = \"Chicago office device\",\n GlobalNetworkId = globalNetwork.Id,\n SiteId = site.SiteId,\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"Network\",\n Value = \"north-america\",\n },\n },\n });\n\n var linkAssociation = new AwsNative.NetworkManager.LinkAssociation(\"linkAssociation\", new()\n {\n GlobalNetworkId = globalNetwork.Id,\n LinkId = link.LinkId,\n DeviceId = device.DeviceId,\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/networkmanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tglobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, \"globalNetwork\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsite, err := networkmanager.NewSite(ctx, \"site\", \u0026networkmanager.SiteArgs{\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tLocation: \u0026networkmanager.SiteLocationArgs{\n\t\t\t\tAddress: pulumi.String(\"227 W Monroe St, Chicago, IL 60606\"),\n\t\t\t\tLatitude: pulumi.String(\"41.8\"),\n\t\t\t\tLongitude: pulumi.String(\"-87.6\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlink, err := networkmanager.NewLink(ctx, \"link\", \u0026networkmanager.LinkArgs{\n\t\t\tDescription: pulumi.String(\"Broadband link\"),\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tSiteId: site.SiteId,\n\t\t\tBandwidth: \u0026networkmanager.LinkBandwidthArgs{\n\t\t\t\tDownloadSpeed: pulumi.Int(20),\n\t\t\t\tUploadSpeed: pulumi.Int(20),\n\t\t\t},\n\t\t\tProvider: pulumi.String(\"AnyCompany\"),\n\t\t\tType: pulumi.String(\"Broadband\"),\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"Name\"),\n\t\t\t\t\tValue: pulumi.String(\"broadband-link-1\"),\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\tdevice, err := networkmanager.NewDevice(ctx, \"device\", \u0026networkmanager.DeviceArgs{\n\t\t\tDescription: pulumi.String(\"Chicago office device\"),\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tSiteId: site.SiteId,\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"Network\"),\n\t\t\t\t\tValue: pulumi.String(\"north-america\"),\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\t_, err = networkmanager.NewLinkAssociation(ctx, \"linkAssociation\", \u0026networkmanager.LinkAssociationArgs{\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tLinkId: link.LinkId,\n\t\t\tDeviceId: device.DeviceId,\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 globalNetwork = new aws_native.networkmanager.GlobalNetwork(\"globalNetwork\", {});\nconst site = new aws_native.networkmanager.Site(\"site\", {\n globalNetworkId: globalNetwork.id,\n location: {\n address: \"227 W Monroe St, Chicago, IL 60606\",\n latitude: \"41.8\",\n longitude: \"-87.6\",\n },\n});\nconst link = new aws_native.networkmanager.Link(\"link\", {\n description: \"Broadband link\",\n globalNetworkId: globalNetwork.id,\n siteId: site.siteId,\n bandwidth: {\n downloadSpeed: 20,\n uploadSpeed: 20,\n },\n provider: \"AnyCompany\",\n type: \"Broadband\",\n tags: [{\n key: \"Name\",\n value: \"broadband-link-1\",\n }],\n});\nconst device = new aws_native.networkmanager.Device(\"device\", {\n description: \"Chicago office device\",\n globalNetworkId: globalNetwork.id,\n siteId: site.siteId,\n tags: [{\n key: \"Network\",\n value: \"north-america\",\n }],\n});\nconst linkAssociation = new aws_native.networkmanager.LinkAssociation(\"linkAssociation\", {\n globalNetworkId: globalNetwork.id,\n linkId: link.linkId,\n deviceId: device.deviceId,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nglobal_network = aws_native.networkmanager.GlobalNetwork(\"globalNetwork\")\nsite = aws_native.networkmanager.Site(\"site\",\n global_network_id=global_network.id,\n location={\n \"address\": \"227 W Monroe St, Chicago, IL 60606\",\n \"latitude\": \"41.8\",\n \"longitude\": \"-87.6\",\n })\nlink = aws_native.networkmanager.Link(\"link\",\n description=\"Broadband link\",\n global_network_id=global_network.id,\n site_id=site.site_id,\n bandwidth={\n \"download_speed\": 20,\n \"upload_speed\": 20,\n },\n provider=\"AnyCompany\",\n type=\"Broadband\",\n tags=[{\n \"key\": \"Name\",\n \"value\": \"broadband-link-1\",\n }])\ndevice = aws_native.networkmanager.Device(\"device\",\n description=\"Chicago office device\",\n global_network_id=global_network.id,\n site_id=site.site_id,\n tags=[{\n \"key\": \"Network\",\n \"value\": \"north-america\",\n }])\nlink_association = aws_native.networkmanager.LinkAssociation(\"linkAssociation\",\n global_network_id=global_network.id,\n link_id=link.link_id,\n device_id=device.device_id)\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 globalNetwork = new AwsNative.NetworkManager.GlobalNetwork(\"globalNetwork\");\n\n var site = new AwsNative.NetworkManager.Site(\"site\", new()\n {\n GlobalNetworkId = globalNetwork.Id,\n Location = new AwsNative.NetworkManager.Inputs.SiteLocationArgs\n {\n Address = \"227 W Monroe St, Chicago, IL 60606\",\n Latitude = \"41.8\",\n Longitude = \"-87.6\",\n },\n });\n\n var link = new AwsNative.NetworkManager.Link(\"link\", new()\n {\n Description = \"Broadband link\",\n GlobalNetworkId = globalNetwork.Id,\n SiteId = site.SiteId,\n Bandwidth = new AwsNative.NetworkManager.Inputs.LinkBandwidthArgs\n {\n DownloadSpeed = 20,\n UploadSpeed = 20,\n },\n Provider = \"AnyCompany\",\n Type = \"Broadband\",\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"Name\",\n Value = \"broadband-link-1\",\n },\n },\n });\n\n var device = new AwsNative.NetworkManager.Device(\"device\", new()\n {\n Description = \"Chicago office device\",\n GlobalNetworkId = globalNetwork.Id,\n SiteId = site.SiteId,\n Tags = new[]\n {\n new AwsNative.Inputs.TagArgs\n {\n Key = \"Network\",\n Value = \"north-america\",\n },\n },\n });\n\n var linkAssociation = new AwsNative.NetworkManager.LinkAssociation(\"linkAssociation\", new()\n {\n GlobalNetworkId = globalNetwork.Id,\n LinkId = link.LinkId,\n DeviceId = device.DeviceId,\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/networkmanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tglobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, \"globalNetwork\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsite, err := networkmanager.NewSite(ctx, \"site\", \u0026networkmanager.SiteArgs{\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tLocation: \u0026networkmanager.SiteLocationArgs{\n\t\t\t\tAddress: pulumi.String(\"227 W Monroe St, Chicago, IL 60606\"),\n\t\t\t\tLatitude: pulumi.String(\"41.8\"),\n\t\t\t\tLongitude: pulumi.String(\"-87.6\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlink, err := networkmanager.NewLink(ctx, \"link\", \u0026networkmanager.LinkArgs{\n\t\t\tDescription: pulumi.String(\"Broadband link\"),\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tSiteId: site.SiteId,\n\t\t\tBandwidth: \u0026networkmanager.LinkBandwidthArgs{\n\t\t\t\tDownloadSpeed: pulumi.Int(20),\n\t\t\t\tUploadSpeed: pulumi.Int(20),\n\t\t\t},\n\t\t\tProvider: pulumi.String(\"AnyCompany\"),\n\t\t\tType: pulumi.String(\"Broadband\"),\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"Name\"),\n\t\t\t\t\tValue: pulumi.String(\"broadband-link-1\"),\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\tdevice, err := networkmanager.NewDevice(ctx, \"device\", \u0026networkmanager.DeviceArgs{\n\t\t\tDescription: pulumi.String(\"Chicago office device\"),\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tSiteId: site.SiteId,\n\t\t\tTags: aws.TagArray{\n\t\t\t\t\u0026aws.TagArgs{\n\t\t\t\t\tKey: pulumi.String(\"Network\"),\n\t\t\t\t\tValue: pulumi.String(\"north-america\"),\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\t_, err = networkmanager.NewLinkAssociation(ctx, \"linkAssociation\", \u0026networkmanager.LinkAssociationArgs{\n\t\t\tGlobalNetworkId: globalNetwork.ID(),\n\t\t\tLinkId: link.LinkId,\n\t\t\tDeviceId: device.DeviceId,\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 globalNetwork = new aws_native.networkmanager.GlobalNetwork(\"globalNetwork\", {});\nconst site = new aws_native.networkmanager.Site(\"site\", {\n globalNetworkId: globalNetwork.id,\n location: {\n address: \"227 W Monroe St, Chicago, IL 60606\",\n latitude: \"41.8\",\n longitude: \"-87.6\",\n },\n});\nconst link = new aws_native.networkmanager.Link(\"link\", {\n description: \"Broadband link\",\n globalNetworkId: globalNetwork.id,\n siteId: site.siteId,\n bandwidth: {\n downloadSpeed: 20,\n uploadSpeed: 20,\n },\n provider: \"AnyCompany\",\n type: \"Broadband\",\n tags: [{\n key: \"Name\",\n value: \"broadband-link-1\",\n }],\n});\nconst device = new aws_native.networkmanager.Device(\"device\", {\n description: \"Chicago office device\",\n globalNetworkId: globalNetwork.id,\n siteId: site.siteId,\n tags: [{\n key: \"Network\",\n value: \"north-america\",\n }],\n});\nconst linkAssociation = new aws_native.networkmanager.LinkAssociation(\"linkAssociation\", {\n globalNetworkId: globalNetwork.id,\n linkId: link.linkId,\n deviceId: device.deviceId,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nglobal_network = aws_native.networkmanager.GlobalNetwork(\"globalNetwork\")\nsite = aws_native.networkmanager.Site(\"site\",\n global_network_id=global_network.id,\n location={\n \"address\": \"227 W Monroe St, Chicago, IL 60606\",\n \"latitude\": \"41.8\",\n \"longitude\": \"-87.6\",\n })\nlink = aws_native.networkmanager.Link(\"link\",\n description=\"Broadband link\",\n global_network_id=global_network.id,\n site_id=site.site_id,\n bandwidth={\n \"download_speed\": 20,\n \"upload_speed\": 20,\n },\n provider=\"AnyCompany\",\n type=\"Broadband\",\n tags=[{\n \"key\": \"Name\",\n \"value\": \"broadband-link-1\",\n }])\ndevice = aws_native.networkmanager.Device(\"device\",\n description=\"Chicago office device\",\n global_network_id=global_network.id,\n site_id=site.site_id,\n tags=[{\n \"key\": \"Network\",\n \"value\": \"north-america\",\n }])\nlink_association = aws_native.networkmanager.LinkAssociation(\"linkAssociation\",\n global_network_id=global_network.id,\n link_id=link.link_id,\n device_id=device.device_id)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { @@ -252655,6 +254250,7 @@ }, "quickSightConfiguration": { "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration", + "description": "The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider.", "replaceOnChanges": true }, "roleArn": { @@ -252736,7 +254332,8 @@ "description": "Configuration information about Amazon Q Apps." }, "quickSightConfiguration": { - "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration" + "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration", + "description": "The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider." }, "roleArn": { "type": "string", @@ -252761,39 +254358,49 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorActionConfiguration" - } + }, + "description": "A list of action configurations specifying the allowed actions and any associated filters." }, "applicationId": { "type": "string", + "description": "The unique identifier of the Amazon Q Business application.", "replaceOnChanges": true }, "createdAt": { - "type": "string" + "type": "string", + "description": "The timestamp when the data accessor was created." }, "dataAccessorArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the data accessor." }, "dataAccessorId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the data accessor." }, "displayName": { - "type": "string" + "type": "string", + "description": "The friendly name of the data accessor." }, "idcApplicationArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the associated IAM Identity Center application." }, "principal": { "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor.", "replaceOnChanges": true }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags to associate with the data accessor." }, "updatedAt": { - "type": "string" + "type": "string", + "description": "The timestamp when the data accessor was last updated." } }, "type": "object", @@ -252812,22 +254419,27 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorActionConfiguration" - } + }, + "description": "A list of action configurations specifying the allowed actions and any associated filters." }, "applicationId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the Amazon Q Business application." }, "displayName": { - "type": "string" + "type": "string", + "description": "The friendly name of the data accessor." }, "principal": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags to associate with the data accessor." } }, "requiredInputs": [ @@ -252878,7 +254490,8 @@ "replaceOnChanges": true }, "mediaExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration", + "description": "The configuration for extracting information from media in documents." }, "roleArn": { "type": "string", @@ -252951,7 +254564,8 @@ "description": "The identifier of the index the data source is attached to." }, "mediaExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration", + "description": "The configuration for extracting information from media in documents." }, "roleArn": { "type": "string", @@ -253103,18 +254717,22 @@ "items": { "type": "string" }, + "description": "The list of Amazon Q Business actions that the ISV is allowed to perform.", "replaceOnChanges": true }, "applicationId": { "type": "string", + "description": "The unique identifier of the Amazon Q Business application.", "replaceOnChanges": true }, "principal": { "type": "string", + "description": "Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses.", "replaceOnChanges": true }, "statementId": { "type": "string", + "description": "A unique identifier for the policy statement.", "replaceOnChanges": true } }, @@ -253130,16 +254748,20 @@ "type": "array", "items": { "type": "string" - } + }, + "description": "The list of Amazon Q Business actions that the ISV is allowed to perform." }, "applicationId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the Amazon Q Business application." }, "principal": { - "type": "string" + "type": "string", + "description": "Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses." }, "statementId": { - "type": "string" + "type": "string", + "description": "A unique identifier for the policy statement." } }, "requiredInputs": [ @@ -253412,7 +255034,8 @@ "description": "The Unix timestamp when the Amazon Q Business application was last updated." }, "customizationConfiguration": { - "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration" + "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration", + "description": "Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all." }, "defaultEndpoint": { "type": "string", @@ -253496,7 +255119,8 @@ "description": "The identifier of the Amazon Q Business web experience." }, "customizationConfiguration": { - "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration" + "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration", + "description": "Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all." }, "identityProviderConfiguration": { "oneOf": [ @@ -254108,6 +255732,9 @@ }, "description": "\u003cp\u003eThe list of columns after all transforms. These columns are available in templates,\n analyses, and dashboards.\u003c/p\u003e" }, + "performanceConfiguration": { + "$ref": "#/types/aws-native:quicksight:DataSetPerformanceConfiguration" + }, "permissions": { "type": "array", "items": { @@ -254217,6 +255844,9 @@ "type": "string", "description": "\u003cp\u003eThe display name for the dataset.\u003c/p\u003e" }, + "performanceConfiguration": { + "$ref": "#/types/aws-native:quicksight:DataSetPerformanceConfiguration" + }, "permissions": { "type": "array", "items": { @@ -262910,9 +264540,6 @@ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", "description": "Settings that define where logs are stored." }, - "metadataTableConfiguration": { - "$ref": "#/types/aws-native:s3:BucketMetadataTableConfiguration" - }, "metricsConfigurations": { "type": "array", "items": { @@ -263026,9 +264653,6 @@ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", "description": "Settings that define where logs are stored." }, - "metadataTableConfiguration": { - "$ref": "#/types/aws-native:s3:BucketMetadataTableConfiguration" - }, "metricsConfigurations": { "type": "array", "items": { @@ -263739,14 +265363,17 @@ "description": "Creates an Amazon S3 Tables table bucket in the same AWS Region where you create the AWS CloudFormation stack.", "properties": { "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." }, "tableBucketName": { "type": "string", + "description": "The name for the table bucket.", "replaceOnChanges": true }, "unreferencedFileRemoval": { - "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval" + "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval", + "description": "The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) ." } }, "type": "object", @@ -263756,10 +265383,12 @@ ], "inputProperties": { "tableBucketName": { - "type": "string" + "type": "string", + "description": "The name for the table bucket." }, "unreferencedFileRemoval": { - "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval" + "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval", + "description": "The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) ." } } }, @@ -263767,10 +265396,12 @@ "description": "Applies an IAM resource policy to a table bucket.", "properties": { "resourcePolicy": { - "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy" + "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy", + "description": "The bucket policy JSON for the table bucket." }, "tableBucketArn": { "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket.", "replaceOnChanges": true } }, @@ -263781,10 +265412,12 @@ ], "inputProperties": { "resourcePolicy": { - "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy" + "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy", + "description": "The bucket policy JSON for the table bucket." }, "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." } }, "requiredInputs": [ @@ -273689,6 +275322,9 @@ "type": "string", "description": "The service-assigned ID of the server that is created.\n\nAn example `ServerId` is `s-01234567890abcdef` ." }, + "state": { + "$ref": "#/types/aws-native:transfer:ServerState" + }, "structuredLogDestinations": { "type": "array", "items": { @@ -273712,7 +275348,8 @@ "required": [ "arn", "as2ServiceManagedEgressIpAddresses", - "serverId" + "serverId", + "state" ], "inputProperties": { "certificate": { @@ -274471,29 +276108,36 @@ "description": "VpcLattice ResourceConfiguration CFN resource", "properties": { "allowAssociationToSharableServiceNetwork": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether the resource configuration can be associated with a sharable service network." }, "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource configuration." }, "awsId": { - "type": "string" + "type": "string", + "description": "The ID of the resource configuration." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the resource configuration." }, "portRanges": { "type": "array", "items": { "type": "string" - } + }, + "description": "(SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30)." }, "protocolType": { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationProtocolType", + "description": "(SINGLE, GROUP) The protocol accepted by the resource configuration.", "replaceOnChanges": true }, "resourceConfigurationAuthType": { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationAuthType", + "description": "The auth type for the resource configuration.", "replaceOnChanges": true }, "resourceConfigurationDefinition": { @@ -274507,24 +276151,29 @@ { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationDefinition2Properties" } - ] + ], + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported." }, "resourceConfigurationGroupId": { - "type": "string" + "type": "string", + "description": "The ID of the group resource configuration." }, "resourceConfigurationType": { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationType", + "description": "The type of resource configuration. A resource configuration can be one of the following types:\n\n- *SINGLE* - A single resource.\n- *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration.\n- *CHILD* - A single resource that is part of a group resource configuration.\n- *ARN* - An AWS resource.", "replaceOnChanges": true }, "resourceGatewayId": { "type": "string", + "description": "The ID of the resource gateway.", "replaceOnChanges": true }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource configuration." } }, "type": "object", @@ -274534,22 +276183,27 @@ ], "inputProperties": { "allowAssociationToSharableServiceNetwork": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether the resource configuration can be associated with a sharable service network." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the resource configuration." }, "portRanges": { "type": "array", "items": { "type": "string" - } + }, + "description": "(SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30)." }, "protocolType": { - "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationProtocolType" + "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationProtocolType", + "description": "(SINGLE, GROUP) The protocol accepted by the resource configuration." }, "resourceConfigurationAuthType": { - "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationAuthType" + "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationAuthType", + "description": "The auth type for the resource configuration." }, "resourceConfigurationDefinition": { "oneOf": [ @@ -274562,22 +276216,27 @@ { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationDefinition2Properties" } - ] + ], + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported." }, "resourceConfigurationGroupId": { - "type": "string" + "type": "string", + "description": "The ID of the group resource configuration." }, "resourceConfigurationType": { - "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationType" + "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationType", + "description": "The type of resource configuration. A resource configuration can be one of the following types:\n\n- *SINGLE* - A single resource.\n- *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration.\n- *CHILD* - A single resource that is part of a group resource configuration.\n- *ARN* - An AWS resource." }, "resourceGatewayId": { - "type": "string" + "type": "string", + "description": "The ID of the resource gateway." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource configuration." } } }, @@ -274585,17 +276244,21 @@ "description": "Creates a resource gateway for a service. ", "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource gateway." }, "awsId": { - "type": "string" + "type": "string", + "description": "The ID of the resource gateway." }, "ipAddressType": { "$ref": "#/types/aws-native:vpclattice:ResourceGatewayIpAddressType", + "description": "The type of IP address used by the resource gateway.", "replaceOnChanges": true }, "name": { "type": "string", + "description": "The name of the resource gateway.", "replaceOnChanges": true }, "securityGroupIds": { @@ -274617,10 +276280,12 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource gateway." }, "vpcIdentifier": { "type": "string", + "description": "The ID of the VPC for the resource gateway.", "replaceOnChanges": true } }, @@ -274631,10 +276296,12 @@ ], "inputProperties": { "ipAddressType": { - "$ref": "#/types/aws-native:vpclattice:ResourceGatewayIpAddressType" + "$ref": "#/types/aws-native:vpclattice:ResourceGatewayIpAddressType", + "description": "The type of IP address used by the resource gateway." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the resource gateway." }, "securityGroupIds": { "type": "array", @@ -274654,10 +276321,12 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource gateway." }, "vpcIdentifier": { - "type": "string" + "type": "string", + "description": "The ID of the VPC for the resource gateway." } } }, @@ -274907,7 +276576,8 @@ "replaceOnChanges": true }, "sharingConfig": { - "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig" + "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig", + "description": "Specify if the service network should be enabled for sharing." }, "tags": { "type": "array", @@ -274934,7 +276604,8 @@ "description": "The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.\n\nIf you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name." }, "sharingConfig": { - "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig" + "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig", + "description": "Specify if the service network should be enabled for sharing." }, "tags": { "type": "array", @@ -274949,24 +276620,29 @@ "description": "VpcLattice ServiceNetworkResourceAssociation CFN resource", "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the association." }, "awsId": { - "type": "string" + "type": "string", + "description": "The ID of the association between the service network and resource configuration." }, "resourceConfigurationId": { "type": "string", + "description": "The ID of the resource configuration associated with the service network.", "replaceOnChanges": true }, "serviceNetworkId": { "type": "string", + "description": "The ID of the service network associated with the resource configuration.", "replaceOnChanges": true }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "A key-value pair to associate with a resource." } }, "type": "object", @@ -274976,16 +276652,19 @@ ], "inputProperties": { "resourceConfigurationId": { - "type": "string" + "type": "string", + "description": "The ID of the resource configuration associated with the service network." }, "serviceNetworkId": { - "type": "string" + "type": "string", + "description": "The ID of the service network associated with the resource configuration." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "A key-value pair to associate with a resource." } } }, @@ -276156,24 +277835,30 @@ "description": "Definition of AWS::Wisdom::AIGuardrailVersion Resource Type", "properties": { "aiGuardrailArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI guardrail version." }, "aiGuardrailId": { "type": "string", + "description": "The ID of the AI guardrail version.", "replaceOnChanges": true }, "aiGuardrailVersionId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version." }, "assistantArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI guardrail version assistant." }, "assistantId": { "type": "string", + "description": "The ID of the AI guardrail version assistant.", "replaceOnChanges": true }, "modifiedTimeSeconds": { "type": "number", + "description": "The modified time of the AI guardrail version in seconds.", "replaceOnChanges": true }, "versionNumber": { @@ -276192,13 +277877,16 @@ ], "inputProperties": { "aiGuardrailId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version." }, "assistantId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version assistant." }, "modifiedTimeSeconds": { - "type": "number" + "type": "number", + "description": "The modified time of the AI guardrail version in seconds." } }, "requiredInputs": [ @@ -276332,7 +278020,8 @@ "description": "Definition of AWS::Wisdom::AIPromptVersion Resource Type", "properties": { "aiPromptArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI prompt." }, "aiPromptId": { "type": "string", @@ -276909,8 +278598,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - }, - "description": "The tags for the pool." + } }, "timeoutSettings": { "$ref": "#/types/aws-native:workspaces:WorkspacesPoolTimeoutSettings", @@ -276956,8 +278644,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - }, - "description": "The tags for the pool." + } }, "timeoutSettings": { "$ref": "#/types/aws-native:workspaces:WorkspacesPoolTimeoutSettings", @@ -283607,12 +285294,13 @@ "description": "Resource Type definition for AWS::Batch::JobDefinition", "inputs": { "properties": { - "id": { - "type": "string" + "jobDefinitionName": { + "type": "string", + "description": "The name of the job definition." } }, "required": [ - "id" + "jobDefinitionName" ] }, "outputs": { @@ -283629,16 +285317,16 @@ "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties", "description": "An object with properties that are specific to Amazon EKS-based jobs. When `eksProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `nodeProperties` ." }, - "id": { - "type": "string" - }, "nodeProperties": { "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties", "description": "An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` .\n\n\u003e If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead." }, "parameters": { - "$ref": "pulumi.json#/Any", - "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* .\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* ." }, "platformCapabilities": { "type": "array", @@ -283660,11 +285348,14 @@ "description": "The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority." }, "tags": { - "$ref": "pulumi.json#/Any", - "description": "The tags that are applied to the job definition.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property." + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A key-value pair to associate with a resource." }, "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout", + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", "description": "The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished." }, "type": { @@ -284676,6 +286367,14 @@ }, "outputs": { "properties": { + "clientSideTimestampsEnabled": { + "type": "boolean", + "description": "Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again." + }, + "replicationSpecification": { + "$ref": "#/types/aws-native:cassandra:KeyspaceReplicationSpecification", + "description": "Specifies the `ReplicationStrategy` of a keyspace. The options are:\n\n- `SINGLE_REGION` for a single Region keyspace (optional) or\n- `MULTI_REGION` for a multi-Region keyspace\n\nIf no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in." + }, "tags": { "type": "array", "items": { @@ -284739,6 +286438,55 @@ } } }, + "aws-native:cassandra:getType": { + "description": "Resource schema for AWS::Cassandra::Type", + "inputs": { + "properties": { + "keyspaceName": { + "type": "string", + "description": "Name of the Keyspace which contains the User-Defined Type." + }, + "typeName": { + "type": "string", + "description": "Name of the User-Defined Type." + } + }, + "required": [ + "keyspaceName", + "typeName" + ] + }, + "outputs": { + "properties": { + "directParentTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of parent User-Defined Types that directly reference the User-Defined Type in their fields." + }, + "directReferringTables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Tables that directly reference the User-Defined Type in their columns." + }, + "keyspaceArn": { + "type": "string", + "description": "ARN of the Keyspace which contains the User-Defined Type." + }, + "lastModifiedTimestamp": { + "type": "number", + "description": "Timestamp of the last time the User-Defined Type's meta data was modified." + }, + "maxNestingDepth": { + "type": "integer", + "description": "Maximum nesting depth of the User-Defined Type across the field types." + } + } + } + }, "aws-native:ce:getAnomalyMonitor": { "description": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. You can use Cost Anomaly Detection by creating monitor.", "inputs": { @@ -285980,7 +287728,7 @@ "items": { "$ref": "#/types/aws-native:cloudformation:StackCapabilitiesItem" }, - "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html)\n- [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html)\n- [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html)\n- [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html)\n\nFor more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. \n\nFor more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) ." + "description": "In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.\n\n- `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`\n\nSome stack templates might include resources that can affect permissions in your AWS account ; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.\n\nThe following IAM resources require you to specify either the `CAPABILITY_IAM` or `CAPABILITY_NAMED_IAM` capability.\n\n- If you have IAM resources, you can specify either capability.\n- If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` .\n- If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error.\n\nIf your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.\n\n- [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)\n- [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)\n- [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)\n- [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)\n- [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)\n- [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)\n- [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)\n\nFor more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* .\n- `CAPABILITY_AUTO_EXPAND`\n\nSome template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation .\n\nIf you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability.\n\n\u003e You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.\n\u003e \n\u003e Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. \n\nFor more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* ." }, "changeSetId": { "type": "string", @@ -286000,7 +287748,7 @@ }, "enableTerminationProtection": { "type": "boolean", - "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack." + "description": "Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default.\n\nFor nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack." }, "lastUpdateTime": { "type": "string", @@ -286033,7 +287781,7 @@ }, "roleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials." + "description": "The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.\n\nIf you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials." }, "rootId": { "type": "string", @@ -286045,7 +287793,7 @@ }, "stackPolicyBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "stackStatus": { "$ref": "#/types/aws-native:cloudformation:StackStatus", @@ -286064,7 +287812,7 @@ }, "templateBody": { "$ref": "pulumi.json#/Any", - "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." + "description": "Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes.\n\nConditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both.\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property." }, "timeoutInMinutes": { "type": "integer", @@ -289507,6 +291255,10 @@ "$ref": "#/types/aws-native:connect:QueueOutboundCallerConfig", "description": "The outbound caller ID name, number, and outbound whisper flow." }, + "outboundEmailConfig": { + "$ref": "#/types/aws-native:connect:QueueOutboundEmailConfig", + "description": "The outbound email address ID." + }, "queueArn": { "type": "string", "description": "The Amazon Resource Name (ARN) for the queue." @@ -289649,7 +291401,7 @@ } }, "aws-native:connect:getRule": { - "description": "Resource Type definition for AWS:Connect::Rule", + "description": "Creates a rule for the specified CON instance.", "inputs": { "properties": { "ruleArn": { @@ -289665,11 +291417,11 @@ "properties": { "actions": { "$ref": "#/types/aws-native:connect:RuleActions", - "description": "The list of actions that will be executed when a rule is triggered." + "description": "A list of actions to be run when the rule is triggered." }, "function": { "type": "string", - "description": "The conditions of a rule." + "description": "The conditions of the rule." }, "name": { "type": "string", @@ -289677,7 +291429,7 @@ }, "publishStatus": { "$ref": "#/types/aws-native:connect:RulePublishStatus", - "description": "The publish status of a rule, either draft or published." + "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``" }, "ruleArn": { "type": "string", @@ -289688,7 +291440,7 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "One or more tags." + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }." } } } @@ -296971,10 +298723,16 @@ }, "description": "(Interface endpoints) The DNS entries for the endpoint. Each entry is a combination of the hosted zone ID and the DNS name. The entries are ordered as follows: regional public DNS, zonal public DNS, private DNS, and wildcard DNS. This order is not enforced for AWS Marketplace services.\n\nThe following is an example. In the first entry, the hosted zone ID is Z1HUB23UULQXV and the DNS name is vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com.\n\n[\"Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com\", \"Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3-us-east-1a.ec2.us-east-1.vpce.amazonaws.com\", \"Z1C12344VYDITB0:ec2.us-east-1.amazonaws.com\"]\n\nIf you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change." }, + "dnsOptions": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecification" + }, "id": { "type": "string", "description": "The ID of the VPC endpoint." }, + "ipAddressType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointIpAddressType" + }, "networkInterfaceIds": { "type": "array", "items": { @@ -297579,7 +299337,7 @@ "properties": { "availabilityZoneRebalancing": { "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing", - "description": "Indicates whether to use Availability Zone rebalancing for the service.\n\nFor more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* ." + "description": "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*." }, "capacityProviderStrategy": { "type": "array", @@ -297606,7 +299364,7 @@ }, "healthCheckGracePeriodSeconds": { "type": "integer", - "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used.\n If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html).\n If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." + "description": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.\n If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up." }, "loadBalancers": { "type": "array", @@ -299256,6 +301014,10 @@ }, "description": "The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation." }, + "schedulerConfiguration": { + "$ref": "#/types/aws-native:emrserverless:ApplicationSchedulerConfiguration", + "description": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above." + }, "tags": { "type": "array", "items": { @@ -310527,6 +312289,12 @@ "$ref": "pulumi.json#/Any", "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." }, + "fieldIndexPolicies": { + "type": "array", + "items": { + "$ref": "pulumi.json#/Any" + } + }, "kmsKeyId": { "type": "string", "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)" @@ -310569,6 +312337,10 @@ }, "outputs": { "properties": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "filterPattern": { "type": "string", "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)." @@ -310613,6 +312385,10 @@ "type": "string", "description": "Unique identifier of a query definition" }, + "queryLanguage": { + "$ref": "#/types/aws-native:logs:QueryDefinitionQueryLanguage", + "description": "Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default." + }, "queryString": { "type": "string", "description": "The query string to use for this definition" @@ -310662,6 +312438,10 @@ }, "outputs": { "properties": { + "applyOnTransformedLogs": { + "type": "boolean", + "description": "This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) .\n\nIf this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events." + }, "destinationArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the destination." @@ -310681,6 +312461,31 @@ } } }, + "aws-native:logs:getTransformer": { + "description": "Specifies a transformer on the log group to transform logs into consistent structured and information rich format.", + "inputs": { + "properties": { + "logGroupIdentifier": { + "type": "string", + "description": "Existing log group that you want to associate with this transformer." + } + }, + "required": [ + "logGroupIdentifier" + ] + }, + "outputs": { + "properties": { + "transformerConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerProcessor" + }, + "description": "List of processors in a transformer" + } + } + } + }, "aws-native:lookoutmetrics:getAlert": { "description": "Resource Type definition for AWS::LookoutMetrics::Alert", "inputs": { @@ -314240,6 +316045,90 @@ } } }, + "aws-native:networkmanager:getDirectConnectGatewayAttachment": { + "description": "AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type", + "inputs": { + "properties": { + "attachmentId": { + "type": "string", + "description": "Id of the attachment." + } + }, + "required": [ + "attachmentId" + ] + }, + "outputs": { + "properties": { + "attachmentId": { + "type": "string", + "description": "Id of the attachment." + }, + "attachmentPolicyRuleNumber": { + "type": "integer", + "description": "The policy rule number associated with the attachment." + }, + "attachmentType": { + "type": "string", + "description": "Attachment type." + }, + "coreNetworkArn": { + "type": "string", + "description": "The ARN of a core network for the Direct Connect Gateway attachment." + }, + "createdAt": { + "type": "string", + "description": "Creation time of the attachment." + }, + "edgeLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Regions where the edges are located." + }, + "networkFunctionGroupName": { + "type": "string", + "description": "The name of the network function group attachment." + }, + "ownerAccountId": { + "type": "string", + "description": "Owner account of the attachment." + }, + "proposedNetworkFunctionGroupChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange", + "description": "The attachment to move from one network function group to another." + }, + "proposedSegmentChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange", + "description": "The attachment to move from one segment to another." + }, + "resourceArn": { + "type": "string", + "description": "The ARN of the Resource." + }, + "segmentName": { + "type": "string", + "description": "The name of the segment attachment.." + }, + "state": { + "type": "string", + "description": "State of the attachment." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + }, + "description": "Tags for the attachment." + }, + "updatedAt": { + "type": "string", + "description": "Last update time of the attachment." + } + } + } + }, "aws-native:networkmanager:getGlobalNetwork": { "description": "The AWS::NetworkManager::GlobalNetwork type specifies a global network of the user's account", "inputs": { @@ -316847,10 +318736,12 @@ "inputs": { "properties": { "applicationId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the Amazon Q Business application." }, "dataAccessorId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the data accessor." } }, "required": [ @@ -316864,31 +318755,39 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorActionConfiguration" - } + }, + "description": "A list of action configurations specifying the allowed actions and any associated filters." }, "createdAt": { - "type": "string" + "type": "string", + "description": "The timestamp when the data accessor was created." }, "dataAccessorArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the data accessor." }, "dataAccessorId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the data accessor." }, "displayName": { - "type": "string" + "type": "string", + "description": "The friendly name of the data accessor." }, "idcApplicationArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the associated IAM Identity Center application." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags to associate with the data accessor." }, "updatedAt": { - "type": "string" + "type": "string", + "description": "The timestamp when the data accessor was last updated." } } } @@ -316947,7 +318846,8 @@ "description": "Provides the configuration information for altering document metadata and content during the document ingestion process.\n\nFor more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) ." }, "mediaExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration", + "description": "The configuration for extracting information from media in documents." }, "roleArn": { "type": "string", @@ -317229,7 +319129,8 @@ "description": "The Unix timestamp when the Amazon Q Business application was last updated." }, "customizationConfiguration": { - "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration" + "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration", + "description": "Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all." }, "defaultEndpoint": { "type": "string", @@ -317569,6 +319470,9 @@ }, "description": "\u003cp\u003eThe list of columns after all transforms. These columns are available in templates,\n analyses, and dashboards.\u003c/p\u003e" }, + "performanceConfiguration": { + "$ref": "#/types/aws-native:quicksight:DataSetPerformanceConfiguration" + }, "permissions": { "type": "array", "items": { @@ -322007,9 +323911,6 @@ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", "description": "Settings that define where logs are stored." }, - "metadataTableConfiguration": { - "$ref": "#/types/aws-native:s3:BucketMetadataTableConfiguration" - }, "metricsConfigurations": { "type": "array", "items": { @@ -322427,7 +324328,8 @@ "inputs": { "properties": { "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." } }, "required": [ @@ -322437,10 +324339,12 @@ "outputs": { "properties": { "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." }, "unreferencedFileRemoval": { - "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval" + "$ref": "#/types/aws-native:s3tables:TableBucketUnreferencedFileRemoval", + "description": "The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) ." } } } @@ -322450,7 +324354,8 @@ "inputs": { "properties": { "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." } }, "required": [ @@ -322460,7 +324365,8 @@ "outputs": { "properties": { "resourcePolicy": { - "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy" + "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy", + "description": "The bucket policy JSON for the table bucket." } } } @@ -327570,6 +329476,9 @@ "type": "string", "description": "The service-assigned ID of the server that is created.\n\nAn example `ServerId` is `s-01234567890abcdef` ." }, + "state": { + "$ref": "#/types/aws-native:transfer:ServerState" + }, "structuredLogDestinations": { "type": "array", "items": { @@ -328001,7 +329910,8 @@ "inputs": { "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource configuration." } }, "required": [ @@ -328011,22 +329921,27 @@ "outputs": { "properties": { "allowAssociationToSharableServiceNetwork": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether the resource configuration can be associated with a sharable service network." }, "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource configuration." }, "id": { - "type": "string" + "type": "string", + "description": "The ID of the resource configuration." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the resource configuration." }, "portRanges": { "type": "array", "items": { "type": "string" - } + }, + "description": "(SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30)." }, "resourceConfigurationDefinition": { "oneOf": [ @@ -328039,13 +329954,15 @@ { "$ref": "#/types/aws-native:vpclattice:ResourceConfigurationDefinition2Properties" } - ] + ], + "description": "Identifies the resource configuration in one of the following ways:\n\n- *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN.\n- *Domain name* - Any domain name that is publicly resolvable.\n- *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource configuration." } } } @@ -328055,7 +329972,8 @@ "inputs": { "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource gateway." } }, "required": [ @@ -328065,10 +329983,12 @@ "outputs": { "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resource gateway." }, "id": { - "type": "string" + "type": "string", + "description": "The ID of the resource gateway." }, "securityGroupIds": { "type": "array", @@ -328081,7 +330001,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags for the resource gateway." } } } @@ -328246,7 +330167,8 @@ "description": "The date and time of the last update, specified in ISO-8601 format." }, "sharingConfig": { - "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig" + "$ref": "#/types/aws-native:vpclattice:ServiceNetworkSharingConfig", + "description": "Specify if the service network should be enabled for sharing." }, "tags": { "type": "array", @@ -328263,7 +330185,8 @@ "inputs": { "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the association." } }, "required": [ @@ -328273,16 +330196,19 @@ "outputs": { "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the association." }, "id": { - "type": "string" + "type": "string", + "description": "The ID of the association between the service network and resource configuration." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "A key-value pair to associate with a resource." } } } @@ -328976,10 +330902,12 @@ "inputs": { "properties": { "aiGuardrailId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version." }, "assistantId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version assistant." }, "versionNumber": { "type": "number", @@ -328995,13 +330923,16 @@ "outputs": { "properties": { "aiGuardrailArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI guardrail version." }, "aiGuardrailVersionId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version." }, "assistantArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI guardrail version assistant." }, "versionNumber": { "type": "number", @@ -329079,7 +331010,8 @@ "outputs": { "properties": { "aiPromptArn": { - "type": "string" + "type": "string", + "description": "The ARN of the AI prompt." }, "aiPromptVersionId": { "type": "string" @@ -329360,6 +331292,12 @@ "type": "string", "description": "The identifier of the pool." }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + } + }, "timeoutSettings": { "$ref": "#/types/aws-native:workspaces:WorkspacesPoolTimeoutSettings", "description": "The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance." diff --git a/reports/missedAutonaming.json b/reports/missedAutonaming.json index 4b1f451587..ac5106fd14 100644 --- a/reports/missedAutonaming.json +++ b/reports/missedAutonaming.json @@ -5996,6 +5996,12 @@ "aws-native:ec2:VpcEndpoint": { "cfTypeName": "AWS::EC2::VPCEndpoint", "properties": { + "dnsOptions": { + "$ref": "#/types/aws-native:ec2:VpcEndpointDnsOptionsSpecification" + }, + "ipAddressType": { + "$ref": "#/types/aws-native:ec2:VpcEndpointIpAddressType" + }, "policyDocument": { "$ref": "pulumi.json#/Any", "description": "An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints.\n For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section:\n ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ \"Version\":\"2012-10-17\", \"Statement\": [{ \"Effect\":\"Allow\", \"Principal\":\"*\", \"Action\":[\"logs:Describe*\",\"logs:Get*\",\"logs:List*\",\"logs:FilterLogEvents\"], \"Resource\":\"*\" }] }'``\n\nSearch the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::EC2::VPCEndpoint` for more information about the expected schema for this property." @@ -6004,6 +6010,9 @@ "type": "boolean", "description": "Indicate whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, ``kinesis.us-east-1.amazonaws.com``), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.\n To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``.\n This property is supported only for interface endpoints.\n Default: ``false``" }, + "resourceConfigurationArn": { + "type": "string" + }, "routeTableIds": { "type": "array", "items": { @@ -6022,6 +6031,9 @@ "type": "string", "description": "The name of the endpoint service." }, + "serviceNetworkArn": { + "type": "string" + }, "subnetIds": { "type": "array", "items": { @@ -9033,6 +9045,22 @@ } } }, + "aws-native:logs:Transformer": { + "cfTypeName": "AWS::Logs::Transformer", + "properties": { + "logGroupIdentifier": { + "type": "string", + "description": "Existing log group that you want to associate with this transformer." + }, + "transformerConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:logs:TransformerProcessor" + }, + "description": "List of processors in a transformer" + } + } + }, "aws-native:m2:Deployment": { "cfTypeName": "AWS::M2::Deployment", "properties": { @@ -9762,6 +9790,41 @@ } } }, + "aws-native:networkmanager:DirectConnectGatewayAttachment": { + "cfTypeName": "AWS::NetworkManager::DirectConnectGatewayAttachment", + "properties": { + "coreNetworkId": { + "type": "string", + "description": "The ID of a core network for the Direct Connect Gateway attachment." + }, + "directConnectGatewayArn": { + "type": "string", + "description": "The ARN of the Direct Connect Gateway." + }, + "edgeLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Regions where the edges are located." + }, + "proposedNetworkFunctionGroupChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange", + "description": "The attachment to move from one network function group to another." + }, + "proposedSegmentChange": { + "$ref": "#/types/aws-native:networkmanager:DirectConnectGatewayAttachmentProposedSegmentChange", + "description": "The attachment to move from one segment to another." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + }, + "description": "Tags for the attachment." + } + } + }, "aws-native:networkmanager:GlobalNetwork": { "cfTypeName": "AWS::NetworkManager::GlobalNetwork", "properties": { @@ -10311,7 +10374,8 @@ "description": "Configuration information about Amazon Q Apps." }, "quickSightConfiguration": { - "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration" + "$ref": "#/types/aws-native:qbusiness:ApplicationQuickSightConfiguration", + "description": "The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider." }, "roleArn": { "type": "string", @@ -10333,22 +10397,27 @@ "type": "array", "items": { "$ref": "#/types/aws-native:qbusiness:DataAccessorActionConfiguration" - } + }, + "description": "A list of action configurations specifying the allowed actions and any associated filters." }, "applicationId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the Amazon Q Business application." }, "displayName": { - "type": "string" + "type": "string", + "description": "The friendly name of the data accessor." }, "principal": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "The tags to associate with the data accessor." } } }, @@ -10380,7 +10449,8 @@ "description": "The identifier of the index the data source is attached to." }, "mediaExtractionConfiguration": { - "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration" + "$ref": "#/types/aws-native:qbusiness:DataSourceMediaExtractionConfiguration", + "description": "The configuration for extracting information from media in documents." }, "roleArn": { "type": "string", @@ -10449,16 +10519,20 @@ "type": "array", "items": { "type": "string" - } + }, + "description": "The list of Amazon Q Business actions that the ISV is allowed to perform." }, "applicationId": { - "type": "string" + "type": "string", + "description": "The unique identifier of the Amazon Q Business application." }, "principal": { - "type": "string" + "type": "string", + "description": "Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses." }, "statementId": { - "type": "string" + "type": "string", + "description": "A unique identifier for the policy statement." } } }, @@ -10559,7 +10633,8 @@ "description": "The identifier of the Amazon Q Business web experience." }, "customizationConfiguration": { - "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration" + "$ref": "#/types/aws-native:qbusiness:WebExperienceCustomizationConfiguration", + "description": "Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all." }, "identityProviderConfiguration": { "oneOf": [ @@ -12096,10 +12171,12 @@ "cfTypeName": "AWS::S3Tables::TableBucketPolicy", "properties": { "resourcePolicy": { - "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy" + "$ref": "#/types/aws-native:s3tables:TableBucketPolicyResourcePolicy", + "description": "The bucket policy JSON for the table bucket." }, "tableBucketArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket." } } }, @@ -13475,16 +13552,19 @@ "cfTypeName": "AWS::VpcLattice::ServiceNetworkResourceAssociation", "properties": { "resourceConfigurationId": { - "type": "string" + "type": "string", + "description": "The ID of the resource configuration associated with the service network." }, "serviceNetworkId": { - "type": "string" + "type": "string", + "description": "The ID of the service network associated with the resource configuration." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "A key-value pair to associate with a resource." } } }, @@ -13599,13 +13679,16 @@ "cfTypeName": "AWS::Wisdom::AIGuardrailVersion", "properties": { "aiGuardrailId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version." }, "assistantId": { - "type": "string" + "type": "string", + "description": "The ID of the AI guardrail version assistant." }, "modifiedTimeSeconds": { - "type": "number" + "type": "number", + "description": "The modified time of the AI guardrail version in seconds." } } }, diff --git a/sdk/dotnet/AppConfig/ConfigurationProfile.cs b/sdk/dotnet/AppConfig/ConfigurationProfile.cs index 4487239bc8..de7f4b2e07 100644 --- a/sdk/dotnet/AppConfig/ConfigurationProfile.cs +++ b/sdk/dotnet/AppConfig/ConfigurationProfile.cs @@ -27,6 +27,12 @@ public partial class ConfigurationProfile : global::Pulumi.CustomResource [Output("configurationProfileId")] public Output ConfigurationProfileId { get; private set; } = null!; + /// + /// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + /// + [Output("deletionProtectionCheck")] + public Output DeletionProtectionCheck { get; private set; } = null!; + /// /// A description of the configuration profile. /// @@ -138,6 +144,12 @@ public sealed class ConfigurationProfileArgs : global::Pulumi.ResourceArgs [Input("applicationId", required: true)] public Input ApplicationId { get; set; } = null!; + /// + /// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + /// + [Input("deletionProtectionCheck")] + public Input? DeletionProtectionCheck { get; set; } + /// /// A description of the configuration profile. /// diff --git a/sdk/dotnet/AppConfig/Enums.cs b/sdk/dotnet/AppConfig/Enums.cs index b7a942124c..bab3247ea9 100644 --- a/sdk/dotnet/AppConfig/Enums.cs +++ b/sdk/dotnet/AppConfig/Enums.cs @@ -7,6 +7,38 @@ namespace Pulumi.AwsNative.AppConfig { + /// + /// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + /// + [EnumType] + public readonly struct ConfigurationProfileDeletionProtectionCheck : IEquatable + { + private readonly string _value; + + private ConfigurationProfileDeletionProtectionCheck(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ConfigurationProfileDeletionProtectionCheck AccountDefault { get; } = new ConfigurationProfileDeletionProtectionCheck("ACCOUNT_DEFAULT"); + public static ConfigurationProfileDeletionProtectionCheck Apply { get; } = new ConfigurationProfileDeletionProtectionCheck("APPLY"); + public static ConfigurationProfileDeletionProtectionCheck Bypass { get; } = new ConfigurationProfileDeletionProtectionCheck("BYPASS"); + + public static bool operator ==(ConfigurationProfileDeletionProtectionCheck left, ConfigurationProfileDeletionProtectionCheck right) => left.Equals(right); + public static bool operator !=(ConfigurationProfileDeletionProtectionCheck left, ConfigurationProfileDeletionProtectionCheck right) => !left.Equals(right); + + public static explicit operator string(ConfigurationProfileDeletionProtectionCheck value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ConfigurationProfileDeletionProtectionCheck other && Equals(other); + public bool Equals(ConfigurationProfileDeletionProtectionCheck other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types: /// @@ -80,4 +112,36 @@ private DeploymentStrategyReplicateTo(string value) public override string ToString() => _value; } + + /// + /// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + /// + [EnumType] + public readonly struct EnvironmentDeletionProtectionCheck : IEquatable + { + private readonly string _value; + + private EnvironmentDeletionProtectionCheck(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static EnvironmentDeletionProtectionCheck AccountDefault { get; } = new EnvironmentDeletionProtectionCheck("ACCOUNT_DEFAULT"); + public static EnvironmentDeletionProtectionCheck Apply { get; } = new EnvironmentDeletionProtectionCheck("APPLY"); + public static EnvironmentDeletionProtectionCheck Bypass { get; } = new EnvironmentDeletionProtectionCheck("BYPASS"); + + public static bool operator ==(EnvironmentDeletionProtectionCheck left, EnvironmentDeletionProtectionCheck right) => left.Equals(right); + public static bool operator !=(EnvironmentDeletionProtectionCheck left, EnvironmentDeletionProtectionCheck right) => !left.Equals(right); + + public static explicit operator string(EnvironmentDeletionProtectionCheck value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is EnvironmentDeletionProtectionCheck other && Equals(other); + public bool Equals(EnvironmentDeletionProtectionCheck 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/AppConfig/Environment.cs b/sdk/dotnet/AppConfig/Environment.cs index da40740120..2fd91950b4 100644 --- a/sdk/dotnet/AppConfig/Environment.cs +++ b/sdk/dotnet/AppConfig/Environment.cs @@ -21,6 +21,12 @@ public partial class Environment : global::Pulumi.CustomResource [Output("applicationId")] public Output ApplicationId { get; private set; } = null!; + /// + /// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + /// + [Output("deletionProtectionCheck")] + public Output DeletionProtectionCheck { get; private set; } = null!; + /// /// A description of the environment. /// @@ -106,6 +112,12 @@ public sealed class EnvironmentArgs : global::Pulumi.ResourceArgs [Input("applicationId", required: true)] public Input ApplicationId { get; set; } = null!; + /// + /// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + /// + [Input("deletionProtectionCheck")] + public Input? DeletionProtectionCheck { get; set; } + /// /// A description of the environment. /// diff --git a/sdk/dotnet/AutoScaling/Enums.cs b/sdk/dotnet/AutoScaling/Enums.cs index b90e412d19..6827fb2ccb 100644 --- a/sdk/dotnet/AutoScaling/Enums.cs +++ b/sdk/dotnet/AutoScaling/Enums.cs @@ -8,10 +8,9 @@ namespace Pulumi.AwsNative.AutoScaling { /// - /// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - /// - /// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - /// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + /// If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + /// + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + /// + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. /// [EnumType] public readonly struct AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy : IEquatable @@ -42,7 +41,7 @@ private AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy } /// - /// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + /// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. /// [EnumType] public readonly struct AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior : IEquatable diff --git a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs index 2437e8b65d..4b38187810 100644 --- a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs +++ b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs @@ -10,13 +10,15 @@ namespace Pulumi.AwsNative.AutoScaling.Inputs { + /// + /// ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + /// public sealed class AutoScalingGroupAvailabilityZoneDistributionArgs : global::Pulumi.ResourceArgs { /// - /// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - /// - /// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - /// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + /// If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + /// + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + /// + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. /// [Input("capacityDistributionStrategy")] public Input? CapacityDistributionStrategy { get; set; } diff --git a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneImpairmentPolicyArgs.cs b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneImpairmentPolicyArgs.cs index bad0533591..afebfe6901 100644 --- a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneImpairmentPolicyArgs.cs +++ b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneImpairmentPolicyArgs.cs @@ -10,16 +10,19 @@ namespace Pulumi.AwsNative.AutoScaling.Inputs { + /// + /// Describes an Availability Zone impairment policy. + /// public sealed class AutoScalingGroupAvailabilityZoneImpairmentPolicyArgs : global::Pulumi.ResourceArgs { /// - /// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + /// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. /// [Input("impairedZoneHealthCheckBehavior", required: true)] public Input ImpairedZoneHealthCheckBehavior { get; set; } = null!; /// - /// If `true` , enable zonal shift for your Auto Scaling group. + /// If ``true``, enable zonal shift for your Auto Scaling group. /// [Input("zonalShiftEnabled", required: true)] public Input ZonalShiftEnabled { get; set; } = null!; diff --git a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs index a77f9eabb8..9db5fadedb 100644 --- a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs +++ b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs @@ -10,14 +10,16 @@ namespace Pulumi.AwsNative.AutoScaling.Outputs { + /// + /// ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + /// [OutputType] public sealed class AutoScalingGroupAvailabilityZoneDistribution { /// - /// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - /// - /// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - /// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + /// If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + /// + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + /// + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. /// public readonly Pulumi.AwsNative.AutoScaling.AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy? CapacityDistributionStrategy; diff --git a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneImpairmentPolicy.cs b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneImpairmentPolicy.cs index aab384462d..838842110b 100644 --- a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneImpairmentPolicy.cs +++ b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneImpairmentPolicy.cs @@ -10,15 +10,18 @@ namespace Pulumi.AwsNative.AutoScaling.Outputs { + /// + /// Describes an Availability Zone impairment policy. + /// [OutputType] public sealed class AutoScalingGroupAvailabilityZoneImpairmentPolicy { /// - /// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + /// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. /// public readonly Pulumi.AwsNative.AutoScaling.AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior ImpairedZoneHealthCheckBehavior; /// - /// If `true` , enable zonal shift for your Auto Scaling group. + /// If ``true``, enable zonal shift for your Auto Scaling group. /// public readonly bool ZonalShiftEnabled; diff --git a/sdk/dotnet/Batch/GetJobDefinition.cs b/sdk/dotnet/Batch/GetJobDefinition.cs index 7ef482d78a..f0226b484a 100644 --- a/sdk/dotnet/Batch/GetJobDefinition.cs +++ b/sdk/dotnet/Batch/GetJobDefinition.cs @@ -33,8 +33,11 @@ public static Output Invoke(GetJobDefinitionInvokeArgs a public sealed class GetJobDefinitionArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// The name of the job definition. + /// + [Input("jobDefinitionName", required: true)] + public string JobDefinitionName { get; set; } = null!; public GetJobDefinitionArgs() { @@ -44,8 +47,11 @@ public GetJobDefinitionArgs() public sealed class GetJobDefinitionInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// The name of the job definition. + /// + [Input("jobDefinitionName", required: true)] + public Input JobDefinitionName { get; set; } = null!; public GetJobDefinitionInvokeArgs() { @@ -69,7 +75,6 @@ public sealed class GetJobDefinitionResult /// An object with properties that are specific to Amazon EKS-based jobs. When `eksProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `nodeProperties` . /// public readonly Outputs.JobDefinitionEksProperties? EksProperties; - public readonly string? Id; /// /// An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` . /// @@ -78,10 +83,8 @@ public sealed class GetJobDefinitionResult public readonly Outputs.JobDefinitionNodeProperties? NodeProperties; /// /// Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - /// - /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. /// - public readonly object? Parameters; + public readonly ImmutableDictionary? Parameters; /// /// The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . /// @@ -99,15 +102,13 @@ public sealed class GetJobDefinitionResult /// public readonly int? SchedulingPriority; /// - /// The tags that are applied to the job definition. - /// - /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + /// A key-value pair to associate with a resource. /// - public readonly object? Tags; + public readonly ImmutableDictionary? Tags; /// /// The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. /// - public readonly Outputs.JobDefinitionTimeout? Timeout; + public readonly Outputs.JobDefinitionJobTimeout? Timeout; /// /// The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . /// @@ -126,11 +127,9 @@ private GetJobDefinitionResult( Outputs.JobDefinitionEksProperties? eksProperties, - string? id, - Outputs.JobDefinitionNodeProperties? nodeProperties, - object? parameters, + ImmutableDictionary? parameters, ImmutableArray platformCapabilities, @@ -140,16 +139,15 @@ private GetJobDefinitionResult( int? schedulingPriority, - object? tags, + ImmutableDictionary? tags, - Outputs.JobDefinitionTimeout? timeout, + Outputs.JobDefinitionJobTimeout? timeout, string? type) { ContainerProperties = containerProperties; EcsProperties = ecsProperties; EksProperties = eksProperties; - Id = id; NodeProperties = nodeProperties; Parameters = parameters; PlatformCapabilities = platformCapabilities; diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs index f211174809..4d57c604ee 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs @@ -54,7 +54,7 @@ public InputList Environment /// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. /// [Input("fargatePlatformConfiguration")] - public Input? FargatePlatformConfiguration { get; set; } + public Input? FargatePlatformConfiguration { get; set; } /// /// Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . @@ -70,14 +70,6 @@ public InputList Environment [Input("image", required: true)] public Input Image { get; set; } = null!; - /// - /// The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - /// - /// > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - /// - [Input("instanceType")] - public Input? InstanceType { get; set; } - /// /// The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . /// @@ -111,14 +103,14 @@ public InputList Environment public Input? Memory { get; set; } [Input("mountPoints")] - private InputList? _mountPoints; + private InputList? _mountPoints; /// /// The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . /// - public InputList MountPoints + public InputList MountPoints { - get => _mountPoints ?? (_mountPoints = new InputList()); + get => _mountPoints ?? (_mountPoints = new InputList()); set => _mountPoints = value; } @@ -207,14 +199,14 @@ public InputList Ulimits public Input? Vcpus { get; set; } [Input("volumes")] - private InputList? _volumes; + private InputList? _volumes; /// /// A list of data volumes used in a job. /// - public InputList Volumes + public InputList Volumes { - get => _volumes ?? (_volumes = new InputList()); + get => _volumes ?? (_volumes = new InputList()); set => _volumes = value; } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs.cs new file mode 100644 index 0000000000..8466cde665 --- /dev/null +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs.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.Batch.Inputs +{ + + /// + /// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. + /// + public sealed class JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("platformVersion")] + public Input? PlatformVersion { get; set; } + + public JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs() + { + } + public static new JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs Empty => new JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionEcsTaskPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEcsTaskPropertiesArgs.cs index c7b8fc550f..7e23160239 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionEcsTaskPropertiesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEcsTaskPropertiesArgs.cs @@ -89,14 +89,14 @@ public InputList Containers public Input? TaskRoleArn { get; set; } [Input("volumes")] - private InputList? _volumes; + private InputList? _volumes; /// /// A list of volumes that are associated with the job. /// - public InputList Volumes + public InputList Volumes { - get => _volumes ?? (_volumes = new InputList()); + get => _volumes ?? (_volumes = new InputList()); set => _volumes = value; } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionAuthorizationConfigArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEfsAuthorizationConfigArgs.cs similarity index 86% rename from sdk/dotnet/Batch/Inputs/JobDefinitionAuthorizationConfigArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionEfsAuthorizationConfigArgs.cs index d634fdc19c..cc1422385f 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionAuthorizationConfigArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEfsAuthorizationConfigArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionAuthorizationConfigArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionEfsAuthorizationConfigArgs : global::Pulumi.ResourceArgs { /// /// The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . @@ -24,9 +24,9 @@ public sealed class JobDefinitionAuthorizationConfigArgs : global::Pulumi.Resour [Input("iam")] public Input? Iam { get; set; } - public JobDefinitionAuthorizationConfigArgs() + public JobDefinitionEfsAuthorizationConfigArgs() { } - public static new JobDefinitionAuthorizationConfigArgs Empty => new JobDefinitionAuthorizationConfigArgs(); + public static new JobDefinitionEfsAuthorizationConfigArgs Empty => new JobDefinitionEfsAuthorizationConfigArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionEfsVolumeConfigurationArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEfsVolumeConfigurationArgs.cs index 23141a12f1..bda03c9f71 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionEfsVolumeConfigurationArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEfsVolumeConfigurationArgs.cs @@ -16,7 +16,7 @@ public sealed class JobDefinitionEfsVolumeConfigurationArgs : global::Pulumi.Res /// The authorization configuration details for the Amazon EFS file system. /// [Input("authorizationConfig")] - public Input? AuthorizationConfig { get; set; } + public Input? AuthorizationConfig { get; set; } /// /// The Amazon EFS file system ID to use. diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionEksContainerResourceRequirementsArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEksContainerResourceRequirementsArgs.cs index 1925044c6b..12a9776e25 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionEksContainerResourceRequirementsArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEksContainerResourceRequirementsArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.AwsNative.Batch.Inputs public sealed class JobDefinitionEksContainerResourceRequirementsArgs : global::Pulumi.ResourceArgs { + [Input("limits")] + private InputMap? _limits; + /// /// The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. /// @@ -21,8 +24,14 @@ public sealed class JobDefinitionEksContainerResourceRequirementsArgs : global:: /// - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . /// - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . /// - [Input("limits")] - public Input? Limits { get; set; } + public InputMap Limits + { + get => _limits ?? (_limits = new InputMap()); + set => _limits = value; + } + + [Input("requests")] + private InputMap? _requests; /// /// The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. @@ -33,8 +42,11 @@ public sealed class JobDefinitionEksContainerResourceRequirementsArgs : global:: /// - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . /// - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . /// - [Input("requests")] - public Input? Requests { get; set; } + public InputMap Requests + { + get => _requests ?? (_requests = new InputMap()); + set => _requests = value; + } public JobDefinitionEksContainerResourceRequirementsArgs() { diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionMetadataArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEksMetadataArgs.cs similarity index 63% rename from sdk/dotnet/Batch/Inputs/JobDefinitionMetadataArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionEksMetadataArgs.cs index 34546640f7..4b42b01f9d 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionMetadataArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEksMetadataArgs.cs @@ -10,17 +10,23 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionMetadataArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionEksMetadataArgs : global::Pulumi.ResourceArgs { + [Input("labels")] + private InputMap? _labels; + /// /// Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. /// - [Input("labels")] - public Input? Labels { get; set; } + public InputMap Labels + { + get => _labels ?? (_labels = new InputMap()); + set => _labels = value; + } - public JobDefinitionMetadataArgs() + public JobDefinitionEksMetadataArgs() { } - public static new JobDefinitionMetadataArgs Empty => new JobDefinitionMetadataArgs(); + public static new JobDefinitionEksMetadataArgs Empty => new JobDefinitionEksMetadataArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionPodPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEksPodPropertiesArgs.cs similarity index 90% rename from sdk/dotnet/Batch/Inputs/JobDefinitionPodPropertiesArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionEksPodPropertiesArgs.cs index b60bc0806e..08048f73cf 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionPodPropertiesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEksPodPropertiesArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionPodPropertiesArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionEksPodPropertiesArgs : global::Pulumi.ResourceArgs { [Input("containers")] private InputList? _containers; @@ -42,6 +42,12 @@ public InputList Containers [Input("imagePullSecrets")] private InputList? _imagePullSecrets; + + /// + /// References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + /// + /// `ImagePullSecret$name` is required when this object is used. + /// public InputList ImagePullSecrets { get => _imagePullSecrets ?? (_imagePullSecrets = new InputList()); @@ -66,7 +72,7 @@ public InputList InitContainers /// Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . /// [Input("metadata")] - public Input? Metadata { get; set; } + public Input? Metadata { get; set; } /// /// The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . @@ -92,9 +98,9 @@ public InputList Volumes set => _volumes = value; } - public JobDefinitionPodPropertiesArgs() + public JobDefinitionEksPodPropertiesArgs() { } - public static new JobDefinitionPodPropertiesArgs Empty => new JobDefinitionPodPropertiesArgs(); + public static new JobDefinitionEksPodPropertiesArgs Empty => new JobDefinitionEksPodPropertiesArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionEksPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEksPropertiesArgs.cs index b64898fab9..fdbf5ca9a1 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionEksPropertiesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEksPropertiesArgs.cs @@ -16,7 +16,7 @@ public sealed class JobDefinitionEksPropertiesArgs : global::Pulumi.ResourceArgs /// The properties for the Kubernetes pod resources of a job. /// [Input("podProperties")] - public Input? PodProperties { get; set; } + public Input? PodProperties { get; set; } public JobDefinitionEksPropertiesArgs() { diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionFargatePlatformConfigurationArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionFargatePlatformConfigurationArgs.cs deleted file mode 100644 index 4f346a4074..0000000000 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionFargatePlatformConfigurationArgs.cs +++ /dev/null @@ -1,26 +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.Batch.Inputs -{ - - public sealed class JobDefinitionFargatePlatformConfigurationArgs : global::Pulumi.ResourceArgs - { - /// - /// The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . - /// - [Input("platformVersion")] - public Input? PlatformVersion { get; set; } - - public JobDefinitionFargatePlatformConfigurationArgs() - { - } - public static new JobDefinitionFargatePlatformConfigurationArgs Empty => new JobDefinitionFargatePlatformConfigurationArgs(); - } -} diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionVolumesHostArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionHostArgs.cs similarity index 83% rename from sdk/dotnet/Batch/Inputs/JobDefinitionVolumesHostArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionHostArgs.cs index 0126b13b38..868a9a7a5e 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionVolumesHostArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionHostArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionVolumesHostArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionHostArgs : global::Pulumi.ResourceArgs { /// /// The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. @@ -20,9 +20,9 @@ public sealed class JobDefinitionVolumesHostArgs : global::Pulumi.ResourceArgs [Input("sourcePath")] public Input? SourcePath { get; set; } - public JobDefinitionVolumesHostArgs() + public JobDefinitionHostArgs() { } - public static new JobDefinitionVolumesHostArgs Empty => new JobDefinitionVolumesHostArgs(); + public static new JobDefinitionHostArgs Empty => new JobDefinitionHostArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionImagePullSecretArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionImagePullSecretArgs.cs index dfb4708dd9..037fd0d6ac 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionImagePullSecretArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionImagePullSecretArgs.cs @@ -15,8 +15,8 @@ public sealed class JobDefinitionImagePullSecretArgs : global::Pulumi.ResourceAr /// /// Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. /// - [Input("name", required: true)] - public Input Name { get; set; } = null!; + [Input("name")] + public Input? Name { get; set; } public JobDefinitionImagePullSecretArgs() { diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionTimeoutArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionJobTimeoutArgs.cs similarity index 81% rename from sdk/dotnet/Batch/Inputs/JobDefinitionTimeoutArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionJobTimeoutArgs.cs index cd3d389c07..615a7f62ae 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionTimeoutArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionJobTimeoutArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionTimeoutArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionJobTimeoutArgs : global::Pulumi.ResourceArgs { /// /// The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. @@ -22,9 +22,9 @@ public sealed class JobDefinitionTimeoutArgs : global::Pulumi.ResourceArgs [Input("attemptDurationSeconds")] public Input? AttemptDurationSeconds { get; set; } - public JobDefinitionTimeoutArgs() + public JobDefinitionJobTimeoutArgs() { } - public static new JobDefinitionTimeoutArgs Empty => new JobDefinitionTimeoutArgs(); + public static new JobDefinitionJobTimeoutArgs Empty => new JobDefinitionJobTimeoutArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionLogConfigurationArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionLogConfigurationArgs.cs index c002c6ec0c..d23b5c1ca2 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionLogConfigurationArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionLogConfigurationArgs.cs @@ -34,11 +34,17 @@ public sealed class JobDefinitionLogConfigurationArgs : global::Pulumi.ResourceA [Input("logDriver", required: true)] public Input LogDriver { get; set; } = null!; + [Input("options")] + private InputMap? _options; + /// /// The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` /// - [Input("options")] - public Input? Options { get; set; } + public InputMap Options + { + get => _options ?? (_options = new InputMap()); + set => _options = value; + } [Input("secretOptions")] private InputList? _secretOptions; diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionMountPointsArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionMountPointArgs.cs similarity index 81% rename from sdk/dotnet/Batch/Inputs/JobDefinitionMountPointsArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionMountPointArgs.cs index 34b50ba306..e1bf951380 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionMountPointsArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionMountPointArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionMountPointsArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionMountPointArgs : global::Pulumi.ResourceArgs { /// /// The path on the container where the host volume is mounted. @@ -30,9 +30,9 @@ public sealed class JobDefinitionMountPointsArgs : global::Pulumi.ResourceArgs [Input("sourceVolume")] public Input? SourceVolume { get; set; } - public JobDefinitionMountPointsArgs() + public JobDefinitionMountPointArgs() { } - public static new JobDefinitionMountPointsArgs Empty => new JobDefinitionMountPointsArgs(); + public static new JobDefinitionMountPointArgs Empty => new JobDefinitionMountPointArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeContainerPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeContainerPropertiesArgs.cs new file mode 100644 index 0000000000..36a1a6b9da --- /dev/null +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeContainerPropertiesArgs.cs @@ -0,0 +1,118 @@ +// *** 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.Batch.Inputs +{ + + public sealed class JobDefinitionMultiNodeContainerPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("command")] + private InputList? _command; + public InputList Command + { + get => _command ?? (_command = new InputList()); + set => _command = value; + } + + [Input("environment")] + private InputList? _environment; + public InputList Environment + { + get => _environment ?? (_environment = new InputList()); + set => _environment = value; + } + + [Input("ephemeralStorage")] + public Input? EphemeralStorage { get; set; } + + [Input("executionRoleArn")] + public Input? ExecutionRoleArn { get; set; } + + [Input("image", required: true)] + public Input Image { get; set; } = null!; + + [Input("instanceType")] + public Input? InstanceType { get; set; } + + [Input("jobRoleArn")] + public Input? JobRoleArn { get; set; } + + [Input("linuxParameters")] + public Input? LinuxParameters { get; set; } + + [Input("logConfiguration")] + public Input? LogConfiguration { get; set; } + + [Input("memory")] + public Input? Memory { get; set; } + + [Input("mountPoints")] + private InputList? _mountPoints; + public InputList MountPoints + { + get => _mountPoints ?? (_mountPoints = new InputList()); + set => _mountPoints = value; + } + + [Input("privileged")] + public Input? Privileged { get; set; } + + [Input("readonlyRootFilesystem")] + public Input? ReadonlyRootFilesystem { get; set; } + + [Input("repositoryCredentials")] + public Input? RepositoryCredentials { get; set; } + + [Input("resourceRequirements")] + private InputList? _resourceRequirements; + public InputList ResourceRequirements + { + get => _resourceRequirements ?? (_resourceRequirements = new InputList()); + set => _resourceRequirements = value; + } + + [Input("runtimePlatform")] + public Input? RuntimePlatform { get; set; } + + [Input("secrets")] + private InputList? _secrets; + public InputList Secrets + { + get => _secrets ?? (_secrets = new InputList()); + set => _secrets = value; + } + + [Input("ulimits")] + private InputList? _ulimits; + public InputList Ulimits + { + get => _ulimits ?? (_ulimits = new InputList()); + set => _ulimits = value; + } + + [Input("user")] + public Input? User { get; set; } + + [Input("vcpus")] + public Input? Vcpus { get; set; } + + [Input("volumes")] + private InputList? _volumes; + public InputList Volumes + { + get => _volumes ?? (_volumes = new InputList()); + set => _volumes = value; + } + + public JobDefinitionMultiNodeContainerPropertiesArgs() + { + } + public static new JobDefinitionMultiNodeContainerPropertiesArgs Empty => new JobDefinitionMultiNodeContainerPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeEcsPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeEcsPropertiesArgs.cs new file mode 100644 index 0000000000..c1b8dd7883 --- /dev/null +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeEcsPropertiesArgs.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.Batch.Inputs +{ + + public sealed class JobDefinitionMultiNodeEcsPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("taskProperties", required: true)] + private InputList? _taskProperties; + public InputList TaskProperties + { + get => _taskProperties ?? (_taskProperties = new InputList()); + set => _taskProperties = value; + } + + public JobDefinitionMultiNodeEcsPropertiesArgs() + { + } + public static new JobDefinitionMultiNodeEcsPropertiesArgs Empty => new JobDefinitionMultiNodeEcsPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeEcsTaskPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeEcsTaskPropertiesArgs.cs new file mode 100644 index 0000000000..caa4619a6c --- /dev/null +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionMultiNodeEcsTaskPropertiesArgs.cs @@ -0,0 +1,48 @@ +// *** 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.Batch.Inputs +{ + + public sealed class JobDefinitionMultiNodeEcsTaskPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("containers")] + private InputList? _containers; + public InputList Containers + { + get => _containers ?? (_containers = new InputList()); + set => _containers = value; + } + + [Input("executionRoleArn")] + public Input? ExecutionRoleArn { get; set; } + + [Input("ipcMode")] + public Input? IpcMode { get; set; } + + [Input("pidMode")] + public Input? PidMode { get; set; } + + [Input("taskRoleArn")] + public Input? TaskRoleArn { get; set; } + + [Input("volumes")] + private InputList? _volumes; + public InputList Volumes + { + get => _volumes ?? (_volumes = new InputList()); + set => _volumes = value; + } + + public JobDefinitionMultiNodeEcsTaskPropertiesArgs() + { + } + public static new JobDefinitionMultiNodeEcsTaskPropertiesArgs Empty => new JobDefinitionMultiNodeEcsTaskPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionNodeRangePropertyArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionNodeRangePropertyArgs.cs index 521c0f3ff2..0d43313148 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionNodeRangePropertyArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionNodeRangePropertyArgs.cs @@ -16,13 +16,13 @@ public sealed class JobDefinitionNodeRangePropertyArgs : global::Pulumi.Resource /// The container details for the node range. /// [Input("container")] - public Input? Container { get; set; } + public Input? Container { get; set; } /// /// This is an object that represents the properties of the node range for a multi-node parallel job. /// [Input("ecsProperties")] - public Input? EcsProperties { get; set; } + public Input? EcsProperties { get; set; } /// /// This is an object that represents the properties of the node range for a multi-node parallel job. diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionTaskContainerPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionTaskContainerPropertiesArgs.cs index 69515cfa4a..738254cd61 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionTaskContainerPropertiesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionTaskContainerPropertiesArgs.cs @@ -87,7 +87,7 @@ public InputList Environment public Input? LogConfiguration { get; set; } [Input("mountPoints")] - private InputList? _mountPoints; + private InputList? _mountPoints; /// /// The mount points for data volumes in your container. @@ -96,9 +96,9 @@ public InputList Environment /// /// Windows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives. /// - public InputList MountPoints + public InputList MountPoints { - get => _mountPoints ?? (_mountPoints = new InputList()); + get => _mountPoints ?? (_mountPoints = new InputList()); set => _mountPoints = value; } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionVolumesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionVolumeArgs.cs similarity index 73% rename from sdk/dotnet/Batch/Inputs/JobDefinitionVolumesArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionVolumeArgs.cs index c73c598a40..66afbcfab9 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionVolumesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionVolumeArgs.cs @@ -10,10 +10,10 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionVolumesArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionVolumeArgs : global::Pulumi.ResourceArgs { /// - /// This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . + /// This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . /// [Input("efsVolumeConfiguration")] public Input? EfsVolumeConfiguration { get; set; } @@ -24,7 +24,7 @@ public sealed class JobDefinitionVolumesArgs : global::Pulumi.ResourceArgs /// > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. /// [Input("host")] - public Input? Host { get; set; } + public Input? Host { get; set; } /// /// The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . @@ -32,9 +32,9 @@ public sealed class JobDefinitionVolumesArgs : global::Pulumi.ResourceArgs [Input("name")] public Input? Name { get; set; } - public JobDefinitionVolumesArgs() + public JobDefinitionVolumeArgs() { } - public static new JobDefinitionVolumesArgs Empty => new JobDefinitionVolumesArgs(); + public static new JobDefinitionVolumeArgs Empty => new JobDefinitionVolumeArgs(); } } diff --git a/sdk/dotnet/Batch/JobDefinition.cs b/sdk/dotnet/Batch/JobDefinition.cs index 936f9698ab..bcad636114 100644 --- a/sdk/dotnet/Batch/JobDefinition.cs +++ b/sdk/dotnet/Batch/JobDefinition.cs @@ -15,9 +15,6 @@ namespace Pulumi.AwsNative.Batch [AwsNativeResourceType("aws-native:batch:JobDefinition")] public partial class JobDefinition : global::Pulumi.CustomResource { - [Output("awsId")] - public Output AwsId { get; private set; } = null!; - /// /// An object with properties specific to Amazon ECS-based jobs. When `containerProperties` is used in the job definition, it can't be used in addition to `eksProperties` , `ecsProperties` , or `nodeProperties` . /// @@ -52,11 +49,9 @@ public partial class JobDefinition : global::Pulumi.CustomResource /// /// Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - /// - /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. /// [Output("parameters")] - public Output Parameters { get; private set; } = null!; + public Output?> Parameters { get; private set; } = null!; /// /// The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . @@ -83,18 +78,16 @@ public partial class JobDefinition : global::Pulumi.CustomResource public Output SchedulingPriority { get; private set; } = null!; /// - /// The tags that are applied to the job definition. - /// - /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + /// A key-value pair to associate with a resource. /// [Output("tags")] - public Output Tags { get; private set; } = null!; + public Output?> Tags { get; private set; } = null!; /// /// The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. /// [Output("timeout")] - public Output Timeout { get; private set; } = null!; + public Output Timeout { get; private set; } = null!; /// /// The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . @@ -188,13 +181,17 @@ public sealed class JobDefinitionArgs : global::Pulumi.ResourceArgs [Input("nodeProperties")] public Input? NodeProperties { get; set; } + [Input("parameters")] + private InputMap? _parameters; + /// /// Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - /// - /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. /// - [Input("parameters")] - public Input? Parameters { get; set; } + public InputMap Parameters + { + get => _parameters ?? (_parameters = new InputMap()); + set => _parameters = value; + } [Input("platformCapabilities")] private InputList? _platformCapabilities; @@ -226,19 +223,23 @@ public InputList PlatformCapabilities [Input("schedulingPriority")] public Input? SchedulingPriority { get; set; } + [Input("tags")] + private InputMap? _tags; + /// - /// The tags that are applied to the job definition. - /// - /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + /// A key-value pair to associate with a resource. /// - [Input("tags")] - public Input? Tags { get; set; } + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } /// /// The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. /// [Input("timeout")] - public Input? Timeout { get; set; } + public Input? Timeout { get; set; } /// /// The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs index 28957ec2fb..e38958defc 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs @@ -34,7 +34,7 @@ public sealed class JobDefinitionContainerProperties /// /// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. /// - public readonly Outputs.JobDefinitionFargatePlatformConfiguration? FargatePlatformConfiguration; + public readonly Outputs.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties? FargatePlatformConfiguration; /// /// Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . /// @@ -48,12 +48,6 @@ public sealed class JobDefinitionContainerProperties /// public readonly string Image; /// - /// The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - /// - /// > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - /// - public readonly string? InstanceType; - /// /// The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . /// public readonly string? JobRoleArn; @@ -80,7 +74,7 @@ public sealed class JobDefinitionContainerProperties /// /// The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . /// - public readonly ImmutableArray MountPoints; + public readonly ImmutableArray MountPoints; /// /// The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. /// @@ -130,7 +124,7 @@ public sealed class JobDefinitionContainerProperties /// /// A list of data volumes used in a job. /// - public readonly ImmutableArray Volumes; + public readonly ImmutableArray Volumes; [OutputConstructor] private JobDefinitionContainerProperties( @@ -142,12 +136,10 @@ private JobDefinitionContainerProperties( string? executionRoleArn, - Outputs.JobDefinitionFargatePlatformConfiguration? fargatePlatformConfiguration, + Outputs.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties? fargatePlatformConfiguration, string image, - string? instanceType, - string? jobRoleArn, Outputs.JobDefinitionLinuxParameters? linuxParameters, @@ -156,7 +148,7 @@ private JobDefinitionContainerProperties( int? memory, - ImmutableArray mountPoints, + ImmutableArray mountPoints, Outputs.JobDefinitionNetworkConfiguration? networkConfiguration, @@ -178,7 +170,7 @@ private JobDefinitionContainerProperties( int? vcpus, - ImmutableArray volumes) + ImmutableArray volumes) { Command = command; Environment = environment; @@ -186,7 +178,6 @@ private JobDefinitionContainerProperties( ExecutionRoleArn = executionRoleArn; FargatePlatformConfiguration = fargatePlatformConfiguration; Image = image; - InstanceType = instanceType; JobRoleArn = jobRoleArn; LinuxParameters = linuxParameters; LogConfiguration = logConfiguration; diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.cs new file mode 100644 index 0000000000..1ef724c970 --- /dev/null +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.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.Batch.Outputs +{ + + /// + /// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. + /// + [OutputType] + public sealed class JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties + { + public readonly string? PlatformVersion; + + [OutputConstructor] + private JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties(string? platformVersion) + { + PlatformVersion = platformVersion; + } + } +} diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionEcsTaskProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEcsTaskProperties.cs index d4459b43eb..707bfa4352 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionEcsTaskProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEcsTaskProperties.cs @@ -68,7 +68,7 @@ public sealed class JobDefinitionEcsTaskProperties /// /// A list of volumes that are associated with the job. /// - public readonly ImmutableArray Volumes; + public readonly ImmutableArray Volumes; [OutputConstructor] private JobDefinitionEcsTaskProperties( @@ -90,7 +90,7 @@ private JobDefinitionEcsTaskProperties( string? taskRoleArn, - ImmutableArray volumes) + ImmutableArray volumes) { Containers = containers; EphemeralStorage = ephemeralStorage; diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionAuthorizationConfig.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEfsAuthorizationConfig.cs similarity index 94% rename from sdk/dotnet/Batch/Outputs/JobDefinitionAuthorizationConfig.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionEfsAuthorizationConfig.cs index ab76ee7d6f..2881f33aa4 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionAuthorizationConfig.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEfsAuthorizationConfig.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionAuthorizationConfig + public sealed class JobDefinitionEfsAuthorizationConfig { /// /// The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . @@ -23,7 +23,7 @@ public sealed class JobDefinitionAuthorizationConfig public readonly string? Iam; [OutputConstructor] - private JobDefinitionAuthorizationConfig( + private JobDefinitionEfsAuthorizationConfig( string? accessPointId, string? iam) diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionEfsVolumeConfiguration.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEfsVolumeConfiguration.cs index 7d15b7fb21..a435be1aa4 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionEfsVolumeConfiguration.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEfsVolumeConfiguration.cs @@ -16,7 +16,7 @@ public sealed class JobDefinitionEfsVolumeConfiguration /// /// The authorization configuration details for the Amazon EFS file system. /// - public readonly Outputs.JobDefinitionAuthorizationConfig? AuthorizationConfig; + public readonly Outputs.JobDefinitionEfsAuthorizationConfig? AuthorizationConfig; /// /// The Amazon EFS file system ID to use. /// @@ -38,7 +38,7 @@ public sealed class JobDefinitionEfsVolumeConfiguration [OutputConstructor] private JobDefinitionEfsVolumeConfiguration( - Outputs.JobDefinitionAuthorizationConfig? authorizationConfig, + Outputs.JobDefinitionEfsAuthorizationConfig? authorizationConfig, string fileSystemId, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionEksContainerResourceRequirements.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEksContainerResourceRequirements.cs index 0378ec2a83..e1368c8892 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionEksContainerResourceRequirements.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEksContainerResourceRequirements.cs @@ -22,7 +22,7 @@ public sealed class JobDefinitionEksContainerResourceRequirements /// - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . /// - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . /// - public readonly object? Limits; + public readonly ImmutableDictionary? Limits; /// /// The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. /// @@ -32,13 +32,13 @@ public sealed class JobDefinitionEksContainerResourceRequirements /// - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . /// - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . /// - public readonly object? Requests; + public readonly ImmutableDictionary? Requests; [OutputConstructor] private JobDefinitionEksContainerResourceRequirements( - object? limits, + ImmutableDictionary? limits, - object? requests) + ImmutableDictionary? requests) { Limits = limits; Requests = requests; diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionMetadata.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEksMetadata.cs similarity index 79% rename from sdk/dotnet/Batch/Outputs/JobDefinitionMetadata.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionEksMetadata.cs index 60eafb92e1..8bde7bd575 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionMetadata.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEksMetadata.cs @@ -11,15 +11,15 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionMetadata + public sealed class JobDefinitionEksMetadata { /// /// Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. /// - public readonly object? Labels; + public readonly ImmutableDictionary? Labels; [OutputConstructor] - private JobDefinitionMetadata(object? labels) + private JobDefinitionEksMetadata(ImmutableDictionary? labels) { Labels = labels; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionPodProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEksPodProperties.cs similarity index 91% rename from sdk/dotnet/Batch/Outputs/JobDefinitionPodProperties.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionEksPodProperties.cs index 83794b14dc..7ed4f824e6 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionPodProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEksPodProperties.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionPodProperties + public sealed class JobDefinitionEksPodProperties { /// /// The properties of the container that's used on the Amazon EKS pod. @@ -29,6 +29,11 @@ public sealed class JobDefinitionPodProperties /// Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . /// public readonly bool? HostNetwork; + /// + /// References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + /// + /// `ImagePullSecret$name` is required when this object is used. + /// public readonly ImmutableArray ImagePullSecrets; /// /// These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . @@ -39,7 +44,7 @@ public sealed class JobDefinitionPodProperties /// /// Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . /// - public readonly Outputs.JobDefinitionMetadata? Metadata; + public readonly Outputs.JobDefinitionEksMetadata? Metadata; /// /// The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . /// @@ -54,7 +59,7 @@ public sealed class JobDefinitionPodProperties public readonly ImmutableArray Volumes; [OutputConstructor] - private JobDefinitionPodProperties( + private JobDefinitionEksPodProperties( ImmutableArray containers, string? dnsPolicy, @@ -65,7 +70,7 @@ private JobDefinitionPodProperties( ImmutableArray initContainers, - Outputs.JobDefinitionMetadata? metadata, + Outputs.JobDefinitionEksMetadata? metadata, string? serviceAccountName, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionEksProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEksProperties.cs index dbacd9784e..f543127512 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionEksProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEksProperties.cs @@ -16,10 +16,10 @@ public sealed class JobDefinitionEksProperties /// /// The properties for the Kubernetes pod resources of a job. /// - public readonly Outputs.JobDefinitionPodProperties? PodProperties; + public readonly Outputs.JobDefinitionEksPodProperties? PodProperties; [OutputConstructor] - private JobDefinitionEksProperties(Outputs.JobDefinitionPodProperties? podProperties) + private JobDefinitionEksProperties(Outputs.JobDefinitionEksPodProperties? podProperties) { PodProperties = podProperties; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionFargatePlatformConfiguration.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionFargatePlatformConfiguration.cs deleted file mode 100644 index f8ba470c31..0000000000 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionFargatePlatformConfiguration.cs +++ /dev/null @@ -1,27 +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.Batch.Outputs -{ - - [OutputType] - public sealed class JobDefinitionFargatePlatformConfiguration - { - /// - /// The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . - /// - public readonly string? PlatformVersion; - - [OutputConstructor] - private JobDefinitionFargatePlatformConfiguration(string? platformVersion) - { - PlatformVersion = platformVersion; - } - } -} diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionVolumesHost.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionHost.cs similarity index 91% rename from sdk/dotnet/Batch/Outputs/JobDefinitionVolumesHost.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionHost.cs index 0da787d28e..a49c23b91e 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionVolumesHost.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionHost.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionVolumesHost + public sealed class JobDefinitionHost { /// /// The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. @@ -21,7 +21,7 @@ public sealed class JobDefinitionVolumesHost public readonly string? SourcePath; [OutputConstructor] - private JobDefinitionVolumesHost(string? sourcePath) + private JobDefinitionHost(string? sourcePath) { SourcePath = sourcePath; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionImagePullSecret.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionImagePullSecret.cs index e8fae69b9c..4655d6a147 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionImagePullSecret.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionImagePullSecret.cs @@ -16,10 +16,10 @@ public sealed class JobDefinitionImagePullSecret /// /// Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. /// - public readonly string Name; + public readonly string? Name; [OutputConstructor] - private JobDefinitionImagePullSecret(string name) + private JobDefinitionImagePullSecret(string? name) { Name = name; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionTimeout.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionJobTimeout.cs similarity index 89% rename from sdk/dotnet/Batch/Outputs/JobDefinitionTimeout.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionJobTimeout.cs index a506a00ff0..82b0fe1b0c 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionTimeout.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionJobTimeout.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionTimeout + public sealed class JobDefinitionJobTimeout { /// /// The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. @@ -23,7 +23,7 @@ public sealed class JobDefinitionTimeout public readonly int? AttemptDurationSeconds; [OutputConstructor] - private JobDefinitionTimeout(int? attemptDurationSeconds) + private JobDefinitionJobTimeout(int? attemptDurationSeconds) { AttemptDurationSeconds = attemptDurationSeconds; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionLogConfiguration.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionLogConfiguration.cs index 34e648c8b8..92ef45cd79 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionLogConfiguration.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionLogConfiguration.cs @@ -36,7 +36,7 @@ public sealed class JobDefinitionLogConfiguration /// /// The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` /// - public readonly object? Options; + public readonly ImmutableDictionary? Options; /// /// The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . /// @@ -46,7 +46,7 @@ public sealed class JobDefinitionLogConfiguration private JobDefinitionLogConfiguration( string logDriver, - object? options, + ImmutableDictionary? options, ImmutableArray secretOptions) { diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoints.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoint.cs similarity index 92% rename from sdk/dotnet/Batch/Outputs/JobDefinitionMountPoints.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionMountPoint.cs index 7c32028846..eb13206d9b 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoints.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoint.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionMountPoints + public sealed class JobDefinitionMountPoint { /// /// The path on the container where the host volume is mounted. @@ -27,7 +27,7 @@ public sealed class JobDefinitionMountPoints public readonly string? SourceVolume; [OutputConstructor] - private JobDefinitionMountPoints( + private JobDefinitionMountPoint( string? containerPath, bool? readOnly, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeContainerProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeContainerProperties.cs new file mode 100644 index 0000000000..1e44adcea7 --- /dev/null +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeContainerProperties.cs @@ -0,0 +1,105 @@ +// *** 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.Batch.Outputs +{ + + [OutputType] + public sealed class JobDefinitionMultiNodeContainerProperties + { + public readonly ImmutableArray Command; + public readonly ImmutableArray Environment; + public readonly Outputs.JobDefinitionEphemeralStorage? EphemeralStorage; + public readonly string? ExecutionRoleArn; + public readonly string Image; + public readonly string? InstanceType; + public readonly string? JobRoleArn; + public readonly Outputs.JobDefinitionLinuxParameters? LinuxParameters; + public readonly Outputs.JobDefinitionLogConfiguration? LogConfiguration; + public readonly int? Memory; + public readonly ImmutableArray MountPoints; + public readonly bool? Privileged; + public readonly bool? ReadonlyRootFilesystem; + public readonly Outputs.JobDefinitionRepositoryCredentials? RepositoryCredentials; + public readonly ImmutableArray ResourceRequirements; + public readonly Outputs.JobDefinitionRuntimePlatform? RuntimePlatform; + public readonly ImmutableArray Secrets; + public readonly ImmutableArray Ulimits; + public readonly string? User; + public readonly int? Vcpus; + public readonly ImmutableArray Volumes; + + [OutputConstructor] + private JobDefinitionMultiNodeContainerProperties( + ImmutableArray command, + + ImmutableArray environment, + + Outputs.JobDefinitionEphemeralStorage? ephemeralStorage, + + string? executionRoleArn, + + string image, + + string? instanceType, + + string? jobRoleArn, + + Outputs.JobDefinitionLinuxParameters? linuxParameters, + + Outputs.JobDefinitionLogConfiguration? logConfiguration, + + int? memory, + + ImmutableArray mountPoints, + + bool? privileged, + + bool? readonlyRootFilesystem, + + Outputs.JobDefinitionRepositoryCredentials? repositoryCredentials, + + ImmutableArray resourceRequirements, + + Outputs.JobDefinitionRuntimePlatform? runtimePlatform, + + ImmutableArray secrets, + + ImmutableArray ulimits, + + string? user, + + int? vcpus, + + ImmutableArray volumes) + { + Command = command; + Environment = environment; + EphemeralStorage = ephemeralStorage; + ExecutionRoleArn = executionRoleArn; + Image = image; + InstanceType = instanceType; + JobRoleArn = jobRoleArn; + LinuxParameters = linuxParameters; + LogConfiguration = logConfiguration; + Memory = memory; + MountPoints = mountPoints; + Privileged = privileged; + ReadonlyRootFilesystem = readonlyRootFilesystem; + RepositoryCredentials = repositoryCredentials; + ResourceRequirements = resourceRequirements; + RuntimePlatform = runtimePlatform; + Secrets = secrets; + Ulimits = ulimits; + User = user; + Vcpus = vcpus; + Volumes = volumes; + } + } +} diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeEcsProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeEcsProperties.cs new file mode 100644 index 0000000000..22ce6cbee2 --- /dev/null +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeEcsProperties.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.Batch.Outputs +{ + + [OutputType] + public sealed class JobDefinitionMultiNodeEcsProperties + { + public readonly ImmutableArray TaskProperties; + + [OutputConstructor] + private JobDefinitionMultiNodeEcsProperties(ImmutableArray taskProperties) + { + TaskProperties = taskProperties; + } + } +} diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeEcsTaskProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeEcsTaskProperties.cs new file mode 100644 index 0000000000..5056f1f81b --- /dev/null +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionMultiNodeEcsTaskProperties.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.Batch.Outputs +{ + + [OutputType] + public sealed class JobDefinitionMultiNodeEcsTaskProperties + { + public readonly ImmutableArray Containers; + public readonly string? ExecutionRoleArn; + public readonly string? IpcMode; + public readonly string? PidMode; + public readonly string? TaskRoleArn; + public readonly ImmutableArray Volumes; + + [OutputConstructor] + private JobDefinitionMultiNodeEcsTaskProperties( + ImmutableArray containers, + + string? executionRoleArn, + + string? ipcMode, + + string? pidMode, + + string? taskRoleArn, + + ImmutableArray volumes) + { + Containers = containers; + ExecutionRoleArn = executionRoleArn; + IpcMode = ipcMode; + PidMode = pidMode; + TaskRoleArn = taskRoleArn; + Volumes = volumes; + } + } +} diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionNodeRangeProperty.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionNodeRangeProperty.cs index 6a8351b1da..8fc9dd676e 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionNodeRangeProperty.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionNodeRangeProperty.cs @@ -16,11 +16,11 @@ public sealed class JobDefinitionNodeRangeProperty /// /// The container details for the node range. /// - public readonly Outputs.JobDefinitionContainerProperties? Container; + public readonly Outputs.JobDefinitionMultiNodeContainerProperties? Container; /// /// This is an object that represents the properties of the node range for a multi-node parallel job. /// - public readonly Outputs.JobDefinitionEcsProperties? EcsProperties; + public readonly Outputs.JobDefinitionMultiNodeEcsProperties? EcsProperties; /// /// This is an object that represents the properties of the node range for a multi-node parallel job. /// @@ -40,9 +40,9 @@ public sealed class JobDefinitionNodeRangeProperty [OutputConstructor] private JobDefinitionNodeRangeProperty( - Outputs.JobDefinitionContainerProperties? container, + Outputs.JobDefinitionMultiNodeContainerProperties? container, - Outputs.JobDefinitionEcsProperties? ecsProperties, + Outputs.JobDefinitionMultiNodeEcsProperties? ecsProperties, Outputs.JobDefinitionEksProperties? eksProperties, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionTaskContainerProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionTaskContainerProperties.cs index 2886b98de8..eb10e820d0 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionTaskContainerProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionTaskContainerProperties.cs @@ -62,7 +62,7 @@ public sealed class JobDefinitionTaskContainerProperties /// /// Windows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives. /// - public readonly ImmutableArray MountPoints; + public readonly ImmutableArray MountPoints; /// /// The name of a container. The name can be used as a unique identifier to target your `dependsOn` and `Overrides` objects. /// @@ -135,7 +135,7 @@ private JobDefinitionTaskContainerProperties( Outputs.JobDefinitionLogConfiguration? logConfiguration, - ImmutableArray mountPoints, + ImmutableArray mountPoints, string? name, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionVolumes.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionVolume.cs similarity index 78% rename from sdk/dotnet/Batch/Outputs/JobDefinitionVolumes.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionVolume.cs index d7d5ed3da9..98deacb087 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionVolumes.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionVolume.cs @@ -11,10 +11,10 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionVolumes + public sealed class JobDefinitionVolume { /// - /// This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . + /// This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . /// public readonly Outputs.JobDefinitionEfsVolumeConfiguration? EfsVolumeConfiguration; /// @@ -22,17 +22,17 @@ public sealed class JobDefinitionVolumes /// /// > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. /// - public readonly Outputs.JobDefinitionVolumesHost? Host; + public readonly Outputs.JobDefinitionHost? Host; /// /// The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . /// public readonly string? Name; [OutputConstructor] - private JobDefinitionVolumes( + private JobDefinitionVolume( Outputs.JobDefinitionEfsVolumeConfiguration? efsVolumeConfiguration, - Outputs.JobDefinitionVolumesHost? host, + Outputs.JobDefinitionHost? host, string? name) { diff --git a/sdk/dotnet/Cassandra/GetKeyspace.cs b/sdk/dotnet/Cassandra/GetKeyspace.cs index 49277b5d26..7e071cb59b 100644 --- a/sdk/dotnet/Cassandra/GetKeyspace.cs +++ b/sdk/dotnet/Cassandra/GetKeyspace.cs @@ -63,6 +63,19 @@ public GetKeyspaceInvokeArgs() [OutputType] public sealed class GetKeyspaceResult { + /// + /// Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + /// + public readonly bool? ClientSideTimestampsEnabled; + /// + /// Specifies the `ReplicationStrategy` of a keyspace. The options are: + /// + /// - `SINGLE_REGION` for a single Region keyspace (optional) or + /// - `MULTI_REGION` for a multi-Region keyspace + /// + /// If no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in. + /// + public readonly Outputs.KeyspaceReplicationSpecification? ReplicationSpecification; /// /// An array of key-value pairs to apply to this resource. /// @@ -71,8 +84,15 @@ public sealed class GetKeyspaceResult public readonly ImmutableArray Tags; [OutputConstructor] - private GetKeyspaceResult(ImmutableArray tags) + private GetKeyspaceResult( + bool? clientSideTimestampsEnabled, + + Outputs.KeyspaceReplicationSpecification? replicationSpecification, + + ImmutableArray tags) { + ClientSideTimestampsEnabled = clientSideTimestampsEnabled; + ReplicationSpecification = replicationSpecification; Tags = tags; } } diff --git a/sdk/dotnet/Cassandra/GetType.cs b/sdk/dotnet/Cassandra/GetType.cs new file mode 100644 index 0000000000..a5cb96977d --- /dev/null +++ b/sdk/dotnet/Cassandra/GetType.cs @@ -0,0 +1,118 @@ +// *** 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.Cassandra +{ + public static class GetType + { + /// + /// Resource schema for AWS::Cassandra::Type + /// + public static Task InvokeAsync(GetTypeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:cassandra:getType", args ?? new GetTypeArgs(), options.WithDefaults()); + + /// + /// Resource schema for AWS::Cassandra::Type + /// + public static Output Invoke(GetTypeInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:cassandra:getType", args ?? new GetTypeInvokeArgs(), options.WithDefaults()); + + /// + /// Resource schema for AWS::Cassandra::Type + /// + public static Output Invoke(GetTypeInvokeArgs args, InvokeOutputOptions options) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:cassandra:getType", args ?? new GetTypeInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetTypeArgs : global::Pulumi.InvokeArgs + { + /// + /// Name of the Keyspace which contains the User-Defined Type. + /// + [Input("keyspaceName", required: true)] + public string KeyspaceName { get; set; } = null!; + + /// + /// Name of the User-Defined Type. + /// + [Input("typeName", required: true)] + public string TypeName { get; set; } = null!; + + public GetTypeArgs() + { + } + public static new GetTypeArgs Empty => new GetTypeArgs(); + } + + public sealed class GetTypeInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Name of the Keyspace which contains the User-Defined Type. + /// + [Input("keyspaceName", required: true)] + public Input KeyspaceName { get; set; } = null!; + + /// + /// Name of the User-Defined Type. + /// + [Input("typeName", required: true)] + public Input TypeName { get; set; } = null!; + + public GetTypeInvokeArgs() + { + } + public static new GetTypeInvokeArgs Empty => new GetTypeInvokeArgs(); + } + + + [OutputType] + public sealed class GetTypeResult + { + /// + /// List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + /// + public readonly ImmutableArray DirectParentTypes; + /// + /// List of Tables that directly reference the User-Defined Type in their columns. + /// + public readonly ImmutableArray DirectReferringTables; + /// + /// ARN of the Keyspace which contains the User-Defined Type. + /// + public readonly string? KeyspaceArn; + /// + /// Timestamp of the last time the User-Defined Type's meta data was modified. + /// + public readonly double? LastModifiedTimestamp; + /// + /// Maximum nesting depth of the User-Defined Type across the field types. + /// + public readonly int? MaxNestingDepth; + + [OutputConstructor] + private GetTypeResult( + ImmutableArray directParentTypes, + + ImmutableArray directReferringTables, + + string? keyspaceArn, + + double? lastModifiedTimestamp, + + int? maxNestingDepth) + { + DirectParentTypes = directParentTypes; + DirectReferringTables = directReferringTables; + KeyspaceArn = keyspaceArn; + LastModifiedTimestamp = lastModifiedTimestamp; + MaxNestingDepth = maxNestingDepth; + } + } +} diff --git a/sdk/dotnet/Cassandra/Inputs/TypeFieldArgs.cs b/sdk/dotnet/Cassandra/Inputs/TypeFieldArgs.cs new file mode 100644 index 0000000000..82ff65b017 --- /dev/null +++ b/sdk/dotnet/Cassandra/Inputs/TypeFieldArgs.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.Cassandra.Inputs +{ + + public sealed class TypeFieldArgs : global::Pulumi.ResourceArgs + { + [Input("fieldName", required: true)] + public Input FieldName { get; set; } = null!; + + [Input("fieldType", required: true)] + public Input FieldType { get; set; } = null!; + + public TypeFieldArgs() + { + } + public static new TypeFieldArgs Empty => new TypeFieldArgs(); + } +} diff --git a/sdk/dotnet/Cassandra/Keyspace.cs b/sdk/dotnet/Cassandra/Keyspace.cs index 239c778542..c45e3b987b 100644 --- a/sdk/dotnet/Cassandra/Keyspace.cs +++ b/sdk/dotnet/Cassandra/Keyspace.cs @@ -104,6 +104,12 @@ namespace Pulumi.AwsNative.Cassandra [AwsNativeResourceType("aws-native:cassandra:Keyspace")] public partial class Keyspace : global::Pulumi.CustomResource { + /// + /// Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + /// + [Output("clientSideTimestampsEnabled")] + public Output ClientSideTimestampsEnabled { get; private set; } = null!; + /// /// Name for Cassandra keyspace /// @@ -155,7 +161,6 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? ReplaceOnChanges = { "keyspaceName", - "replicationSpecification", }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); @@ -179,6 +184,12 @@ public static Keyspace Get(string name, Input id, CustomResourceOptions? public sealed class KeyspaceArgs : global::Pulumi.ResourceArgs { + /// + /// Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + /// + [Input("clientSideTimestampsEnabled")] + public Input? ClientSideTimestampsEnabled { get; set; } + /// /// Name for Cassandra keyspace /// diff --git a/sdk/dotnet/Cassandra/Outputs/TypeField.cs b/sdk/dotnet/Cassandra/Outputs/TypeField.cs new file mode 100644 index 0000000000..6374dc7828 --- /dev/null +++ b/sdk/dotnet/Cassandra/Outputs/TypeField.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.Cassandra.Outputs +{ + + [OutputType] + public sealed class TypeField + { + public readonly string FieldName; + public readonly string FieldType; + + [OutputConstructor] + private TypeField( + string fieldName, + + string fieldType) + { + FieldName = fieldName; + FieldType = fieldType; + } + } +} diff --git a/sdk/dotnet/Cassandra/Type.cs b/sdk/dotnet/Cassandra/Type.cs new file mode 100644 index 0000000000..4c2711f940 --- /dev/null +++ b/sdk/dotnet/Cassandra/Type.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.Cassandra +{ + /// + /// Resource schema for AWS::Cassandra::Type + /// + [AwsNativeResourceType("aws-native:cassandra:Type")] + public partial class Type : global::Pulumi.CustomResource + { + /// + /// List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + /// + [Output("directParentTypes")] + public Output> DirectParentTypes { get; private set; } = null!; + + /// + /// List of Tables that directly reference the User-Defined Type in their columns. + /// + [Output("directReferringTables")] + public Output> DirectReferringTables { get; private set; } = null!; + + /// + /// Field definitions of the User-Defined Type + /// + [Output("fields")] + public Output> Fields { get; private set; } = null!; + + /// + /// ARN of the Keyspace which contains the User-Defined Type. + /// + [Output("keyspaceArn")] + public Output KeyspaceArn { get; private set; } = null!; + + /// + /// Name of the Keyspace which contains the User-Defined Type. + /// + [Output("keyspaceName")] + public Output KeyspaceName { get; private set; } = null!; + + /// + /// Timestamp of the last time the User-Defined Type's meta data was modified. + /// + [Output("lastModifiedTimestamp")] + public Output LastModifiedTimestamp { get; private set; } = null!; + + /// + /// Maximum nesting depth of the User-Defined Type across the field types. + /// + [Output("maxNestingDepth")] + public Output MaxNestingDepth { get; private set; } = null!; + + /// + /// Name of the User-Defined Type. + /// + [Output("typeName")] + public Output TypeName { get; private set; } = null!; + + + /// + /// Create a Type 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 Type(string name, TypeArgs args, CustomResourceOptions? options = null) + : base("aws-native:cassandra:Type", name, args ?? new TypeArgs(), MakeResourceOptions(options, "")) + { + } + + private Type(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:cassandra:Type", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "fields[*]", + "keyspaceName", + "typeName", + }, + }; + 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 Type 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 Type Get(string name, Input id, CustomResourceOptions? options = null) + { + return new Type(name, id, options); + } + } + + public sealed class TypeArgs : global::Pulumi.ResourceArgs + { + [Input("fields", required: true)] + private InputList? _fields; + + /// + /// Field definitions of the User-Defined Type + /// + public InputList Fields + { + get => _fields ?? (_fields = new InputList()); + set => _fields = value; + } + + /// + /// Name of the Keyspace which contains the User-Defined Type. + /// + [Input("keyspaceName", required: true)] + public Input KeyspaceName { get; set; } = null!; + + /// + /// Name of the User-Defined Type. + /// + [Input("typeName")] + public Input? TypeName { get; set; } + + public TypeArgs() + { + } + public static new TypeArgs Empty => new TypeArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/ConfiguredTable.cs b/sdk/dotnet/CleanRooms/ConfiguredTable.cs index ca5e87d27a..a7a51c38e0 100644 --- a/sdk/dotnet/CleanRooms/ConfiguredTable.cs +++ b/sdk/dotnet/CleanRooms/ConfiguredTable.cs @@ -65,7 +65,7 @@ public partial class ConfiguredTable : global::Pulumi.CustomResource /// The table that this configured table represents. /// [Output("tableReference")] - public Output TableReference { get; private set; } = null!; + public Output TableReference { get; private set; } = null!; /// /// An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. @@ -170,7 +170,7 @@ public InputList AnalysisRules /// The table that this configured table represents. /// [Input("tableReference", required: true)] - public Input TableReference { get; set; } = null!; + public object TableReference { get; set; } = null!; [Input("tags")] private InputList? _tags; diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableAthenaTableReferenceArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableAthenaTableReferenceArgs.cs new file mode 100644 index 0000000000..fc892bd084 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableAthenaTableReferenceArgs.cs @@ -0,0 +1,32 @@ +// *** 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 ConfiguredTableAthenaTableReferenceArgs : global::Pulumi.ResourceArgs + { + [Input("databaseName", required: true)] + public Input DatabaseName { get; set; } = null!; + + [Input("outputLocation")] + public Input? OutputLocation { get; set; } + + [Input("tableName", required: true)] + public Input TableName { get; set; } = null!; + + [Input("workGroup", required: true)] + public Input WorkGroup { get; set; } = null!; + + public ConfiguredTableAthenaTableReferenceArgs() + { + } + public static new ConfiguredTableAthenaTableReferenceArgs Empty => new ConfiguredTableAthenaTableReferenceArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableGlueTableReferenceArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableGlueTableReferenceArgs.cs index def2e2e68d..6645d756cb 100644 --- a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableGlueTableReferenceArgs.cs +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableGlueTableReferenceArgs.cs @@ -12,15 +12,9 @@ namespace Pulumi.AwsNative.CleanRooms.Inputs public sealed class ConfiguredTableGlueTableReferenceArgs : global::Pulumi.ResourceArgs { - /// - /// The name of the database the AWS Glue table belongs to. - /// [Input("databaseName", required: true)] public Input DatabaseName { get; set; } = null!; - /// - /// The name of the AWS Glue table. - /// [Input("tableName", required: true)] public Input TableName { get; set; } = null!; diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableReferenceArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableReferenceArgs.cs new file mode 100644 index 0000000000..b88a72f613 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableReferenceArgs.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.CleanRooms.Inputs +{ + + public sealed class ConfiguredTableSnowflakeTableReferenceArgs : global::Pulumi.ResourceArgs + { + [Input("accountIdentifier", required: true)] + public Input AccountIdentifier { get; set; } = null!; + + [Input("databaseName", required: true)] + public Input DatabaseName { get; set; } = null!; + + [Input("schemaName", required: true)] + public Input SchemaName { get; set; } = null!; + + [Input("secretArn", required: true)] + public Input SecretArn { get; set; } = null!; + + [Input("tableName", required: true)] + public Input TableName { get; set; } = null!; + + [Input("tableSchema", required: true)] + public Input TableSchema { get; set; } = null!; + + public ConfiguredTableSnowflakeTableReferenceArgs() + { + } + public static new ConfiguredTableSnowflakeTableReferenceArgs Empty => new ConfiguredTableSnowflakeTableReferenceArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableSchemaPropertiesArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableSchemaPropertiesArgs.cs new file mode 100644 index 0000000000..52f3679235 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableSchemaPropertiesArgs.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 ConfiguredTableSnowflakeTableSchemaPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("v1", required: true)] + private InputList? _v1; + public InputList V1 + { + get => _v1 ?? (_v1 = new InputList()); + set => _v1 = value; + } + + public ConfiguredTableSnowflakeTableSchemaPropertiesArgs() + { + } + public static new ConfiguredTableSnowflakeTableSchemaPropertiesArgs Empty => new ConfiguredTableSnowflakeTableSchemaPropertiesArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableSchemaV1Args.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableSchemaV1Args.cs new file mode 100644 index 0000000000..88ab01e564 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableSnowflakeTableSchemaV1Args.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.CleanRooms.Inputs +{ + + public sealed class ConfiguredTableSnowflakeTableSchemaV1Args : global::Pulumi.ResourceArgs + { + [Input("columnName", required: true)] + public Input ColumnName { get; set; } = null!; + + [Input("columnType", required: true)] + public Input ColumnType { get; set; } = null!; + + public ConfiguredTableSnowflakeTableSchemaV1Args() + { + } + public static new ConfiguredTableSnowflakeTableSchemaV1Args Empty => new ConfiguredTableSnowflakeTableSchemaV1Args(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReferenceArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference0PropertiesArgs.cs similarity index 56% rename from sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReferenceArgs.cs rename to sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference0PropertiesArgs.cs index 5d643b0c6d..d7b7f3e578 100644 --- a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReferenceArgs.cs +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference0PropertiesArgs.cs @@ -10,17 +10,14 @@ namespace Pulumi.AwsNative.CleanRooms.Inputs { - public sealed class ConfiguredTableTableReferenceArgs : global::Pulumi.ResourceArgs + public sealed class ConfiguredTableTableReference0PropertiesArgs : global::Pulumi.ResourceArgs { - /// - /// If present, a reference to the AWS Glue table referred to by this table reference. - /// [Input("glue", required: true)] public Input Glue { get; set; } = null!; - public ConfiguredTableTableReferenceArgs() + public ConfiguredTableTableReference0PropertiesArgs() { } - public static new ConfiguredTableTableReferenceArgs Empty => new ConfiguredTableTableReferenceArgs(); + public static new ConfiguredTableTableReference0PropertiesArgs Empty => new ConfiguredTableTableReference0PropertiesArgs(); } } diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference1PropertiesArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference1PropertiesArgs.cs new file mode 100644 index 0000000000..20397899c4 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference1PropertiesArgs.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 ConfiguredTableTableReference1PropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("snowflake", required: true)] + public Input Snowflake { get; set; } = null!; + + public ConfiguredTableTableReference1PropertiesArgs() + { + } + public static new ConfiguredTableTableReference1PropertiesArgs Empty => new ConfiguredTableTableReference1PropertiesArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference2PropertiesArgs.cs b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference2PropertiesArgs.cs new file mode 100644 index 0000000000..9099b7bb07 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/ConfiguredTableTableReference2PropertiesArgs.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 ConfiguredTableTableReference2PropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("athena", required: true)] + public Input Athena { get; set; } = null!; + + public ConfiguredTableTableReference2PropertiesArgs() + { + } + public static new ConfiguredTableTableReference2PropertiesArgs Empty => new ConfiguredTableTableReference2PropertiesArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableAthenaTableReference.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableAthenaTableReference.cs new file mode 100644 index 0000000000..94276f17af --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableAthenaTableReference.cs @@ -0,0 +1,37 @@ +// *** 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 ConfiguredTableAthenaTableReference + { + public readonly string DatabaseName; + public readonly string? OutputLocation; + public readonly string TableName; + public readonly string WorkGroup; + + [OutputConstructor] + private ConfiguredTableAthenaTableReference( + string databaseName, + + string? outputLocation, + + string tableName, + + string workGroup) + { + DatabaseName = databaseName; + OutputLocation = outputLocation; + TableName = tableName; + WorkGroup = workGroup; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableGlueTableReference.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableGlueTableReference.cs index bd1e607e55..5f16d868cd 100644 --- a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableGlueTableReference.cs +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableGlueTableReference.cs @@ -13,13 +13,7 @@ namespace Pulumi.AwsNative.CleanRooms.Outputs [OutputType] public sealed class ConfiguredTableGlueTableReference { - /// - /// The name of the database the AWS Glue table belongs to. - /// public readonly string DatabaseName; - /// - /// The name of the AWS Glue table. - /// public readonly string TableName; [OutputConstructor] diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableReference.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableReference.cs new file mode 100644 index 0000000000..8103d2276a --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableReference.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.CleanRooms.Outputs +{ + + [OutputType] + public sealed class ConfiguredTableSnowflakeTableReference + { + public readonly string AccountIdentifier; + public readonly string DatabaseName; + public readonly string SchemaName; + public readonly string SecretArn; + public readonly string TableName; + public readonly Outputs.ConfiguredTableSnowflakeTableSchemaProperties TableSchema; + + [OutputConstructor] + private ConfiguredTableSnowflakeTableReference( + string accountIdentifier, + + string databaseName, + + string schemaName, + + string secretArn, + + string tableName, + + Outputs.ConfiguredTableSnowflakeTableSchemaProperties tableSchema) + { + AccountIdentifier = accountIdentifier; + DatabaseName = databaseName; + SchemaName = schemaName; + SecretArn = secretArn; + TableName = tableName; + TableSchema = tableSchema; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableSchemaProperties.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableSchemaProperties.cs new file mode 100644 index 0000000000..0974aab3cb --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableSchemaProperties.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 ConfiguredTableSnowflakeTableSchemaProperties + { + public readonly ImmutableArray V1; + + [OutputConstructor] + private ConfiguredTableSnowflakeTableSchemaProperties(ImmutableArray v1) + { + V1 = v1; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableSchemaV1.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableSchemaV1.cs new file mode 100644 index 0000000000..a09604cc24 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableSnowflakeTableSchemaV1.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.CleanRooms.Outputs +{ + + [OutputType] + public sealed class ConfiguredTableSnowflakeTableSchemaV1 + { + public readonly string ColumnName; + public readonly string ColumnType; + + [OutputConstructor] + private ConfiguredTableSnowflakeTableSchemaV1( + string columnName, + + string columnType) + { + ColumnName = columnName; + ColumnType = columnType; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference0Properties.cs similarity index 63% rename from sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference.cs rename to sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference0Properties.cs index 320683330d..c256aea4a1 100644 --- a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference.cs +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference0Properties.cs @@ -11,15 +11,12 @@ namespace Pulumi.AwsNative.CleanRooms.Outputs { [OutputType] - public sealed class ConfiguredTableTableReference + public sealed class ConfiguredTableTableReference0Properties { - /// - /// If present, a reference to the AWS Glue table referred to by this table reference. - /// public readonly Outputs.ConfiguredTableGlueTableReference Glue; [OutputConstructor] - private ConfiguredTableTableReference(Outputs.ConfiguredTableGlueTableReference glue) + private ConfiguredTableTableReference0Properties(Outputs.ConfiguredTableGlueTableReference glue) { Glue = glue; } diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference1Properties.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference1Properties.cs new file mode 100644 index 0000000000..bbe8ee6b80 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference1Properties.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 ConfiguredTableTableReference1Properties + { + public readonly Outputs.ConfiguredTableSnowflakeTableReference Snowflake; + + [OutputConstructor] + private ConfiguredTableTableReference1Properties(Outputs.ConfiguredTableSnowflakeTableReference snowflake) + { + Snowflake = snowflake; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference2Properties.cs b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference2Properties.cs new file mode 100644 index 0000000000..dc2543a3fa --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/ConfiguredTableTableReference2Properties.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 ConfiguredTableTableReference2Properties + { + public readonly Outputs.ConfiguredTableAthenaTableReference Athena; + + [OutputConstructor] + private ConfiguredTableTableReference2Properties(Outputs.ConfiguredTableAthenaTableReference athena) + { + Athena = athena; + } + } +} diff --git a/sdk/dotnet/CloudFormation/GetStack.cs b/sdk/dotnet/CloudFormation/GetStack.cs index 7fdff77cf5..fa96e96e9f 100644 --- a/sdk/dotnet/CloudFormation/GetStack.cs +++ b/sdk/dotnet/CloudFormation/GetStack.cs @@ -64,7 +64,7 @@ public GetStackInvokeArgs() public sealed class GetStackResult { /// - /// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + /// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. /// /// - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` /// @@ -74,30 +74,30 @@ public sealed class GetStackResult /// /// - If you have IAM resources, you can specify either capability. /// - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - /// - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + /// - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. /// /// If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. /// - /// - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - /// - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - /// - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - /// - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - /// - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - /// - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - /// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + /// - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + /// - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + /// - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + /// - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + /// - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + /// - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + /// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) /// - /// For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + /// For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . /// - `CAPABILITY_AUTO_EXPAND` /// - /// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + /// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . /// /// If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. /// /// > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. /// > - /// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + /// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. /// - /// For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + /// For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . /// public readonly ImmutableArray Capabilities; /// @@ -119,9 +119,9 @@ public sealed class GetStackResult /// public readonly bool? DisableRollback; /// - /// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + /// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. /// - /// For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + /// For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. /// public readonly bool? EnableTerminationProtection; /// @@ -153,9 +153,9 @@ public sealed class GetStackResult /// public readonly string? ParentId; /// - /// The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + /// The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. /// - /// If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + /// If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. /// public readonly string? RoleArn; /// @@ -169,7 +169,7 @@ public sealed class GetStackResult /// public readonly string? StackId; /// - /// Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + /// Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. /// /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. /// @@ -187,7 +187,7 @@ public sealed class GetStackResult /// public readonly ImmutableArray Tags; /// - /// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + /// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. /// /// Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. /// diff --git a/sdk/dotnet/CloudFormation/Inputs/StackSetOperationPreferencesArgs.cs b/sdk/dotnet/CloudFormation/Inputs/StackSetOperationPreferencesArgs.cs index 2c0b412280..a814fe5abe 100644 --- a/sdk/dotnet/CloudFormation/Inputs/StackSetOperationPreferencesArgs.cs +++ b/sdk/dotnet/CloudFormation/Inputs/StackSetOperationPreferencesArgs.cs @@ -27,7 +27,7 @@ public sealed class StackSetOperationPreferencesArgs : global::Pulumi.ResourceAr public Input? ConcurrencyMode { get; set; } /// - /// The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + /// The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. /// /// Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). /// @@ -35,9 +35,9 @@ public sealed class StackSetOperationPreferencesArgs : global::Pulumi.ResourceAr public Input? FailureToleranceCount { get; set; } /// - /// The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + /// The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. /// - /// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + /// When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. /// /// Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. /// @@ -57,7 +57,7 @@ public sealed class StackSetOperationPreferencesArgs : global::Pulumi.ResourceAr /// /// The maximum percentage of accounts in which to perform this operation at one time. /// - /// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + /// When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. /// /// Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. /// diff --git a/sdk/dotnet/CloudFormation/Outputs/StackSetOperationPreferences.cs b/sdk/dotnet/CloudFormation/Outputs/StackSetOperationPreferences.cs index 8645e6a413..0138184e68 100644 --- a/sdk/dotnet/CloudFormation/Outputs/StackSetOperationPreferences.cs +++ b/sdk/dotnet/CloudFormation/Outputs/StackSetOperationPreferences.cs @@ -26,15 +26,15 @@ public sealed class StackSetOperationPreferences /// public readonly Pulumi.AwsNative.CloudFormation.StackSetConcurrencyMode? ConcurrencyMode; /// - /// The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + /// The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. /// /// Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). /// public readonly int? FailureToleranceCount; /// - /// The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + /// The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. /// - /// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + /// When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. /// /// Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. /// @@ -50,7 +50,7 @@ public sealed class StackSetOperationPreferences /// /// The maximum percentage of accounts in which to perform this operation at one time. /// - /// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + /// When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. /// /// Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. /// diff --git a/sdk/dotnet/CloudFormation/Stack.cs b/sdk/dotnet/CloudFormation/Stack.cs index 91cf41c866..3f0c7f7a68 100644 --- a/sdk/dotnet/CloudFormation/Stack.cs +++ b/sdk/dotnet/CloudFormation/Stack.cs @@ -16,7 +16,7 @@ namespace Pulumi.AwsNative.CloudFormation public partial class Stack : global::Pulumi.CustomResource { /// - /// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + /// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. /// /// - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` /// @@ -26,30 +26,30 @@ public partial class Stack : global::Pulumi.CustomResource /// /// - If you have IAM resources, you can specify either capability. /// - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - /// - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + /// - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. /// /// If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. /// - /// - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - /// - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - /// - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - /// - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - /// - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - /// - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - /// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + /// - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + /// - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + /// - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + /// - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + /// - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + /// - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + /// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) /// - /// For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + /// For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . /// - `CAPABILITY_AUTO_EXPAND` /// - /// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + /// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . /// /// If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. /// /// > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. /// > - /// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + /// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. /// - /// For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + /// For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . /// [Output("capabilities")] public Output> Capabilities { get; private set; } = null!; @@ -81,9 +81,9 @@ public partial class Stack : global::Pulumi.CustomResource public Output DisableRollback { get; private set; } = null!; /// - /// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + /// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. /// - /// For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + /// For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. /// [Output("enableTerminationProtection")] public Output EnableTerminationProtection { get; private set; } = null!; @@ -127,9 +127,9 @@ public partial class Stack : global::Pulumi.CustomResource public Output ParentId { get; private set; } = null!; /// - /// The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + /// The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. /// - /// If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + /// If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. /// [Output("roleArn")] public Output RoleArn { get; private set; } = null!; @@ -157,7 +157,7 @@ public partial class Stack : global::Pulumi.CustomResource public Output StackName { get; private set; } = null!; /// - /// Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + /// Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. /// /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. /// @@ -189,7 +189,7 @@ public partial class Stack : global::Pulumi.CustomResource public Output> Tags { get; private set; } = null!; /// - /// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + /// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. /// /// Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. /// @@ -199,7 +199,7 @@ public partial class Stack : global::Pulumi.CustomResource public Output TemplateBody { get; private set; } = null!; /// - /// Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + /// Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. /// /// Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. /// @@ -267,7 +267,7 @@ public sealed class StackArgs : global::Pulumi.ResourceArgs private InputList? _capabilities; /// - /// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + /// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. /// /// - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` /// @@ -277,30 +277,30 @@ public sealed class StackArgs : global::Pulumi.ResourceArgs /// /// - If you have IAM resources, you can specify either capability. /// - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - /// - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + /// - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. /// /// If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. /// - /// - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - /// - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - /// - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - /// - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - /// - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - /// - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - /// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + /// - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + /// - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + /// - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + /// - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + /// - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + /// - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + /// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) /// - /// For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + /// For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . /// - `CAPABILITY_AUTO_EXPAND` /// - /// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + /// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . /// /// If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. /// /// > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. /// > - /// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + /// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. /// - /// For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + /// For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . /// public InputList Capabilities { @@ -323,9 +323,9 @@ public InputList Capabili public Input? DisableRollback { get; set; } /// - /// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + /// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. /// - /// For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + /// For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. /// [Input("enableTerminationProtection")] public Input? EnableTerminationProtection { get; set; } @@ -361,9 +361,9 @@ public InputMap Parameters } /// - /// The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + /// The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. /// - /// If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + /// If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. /// [Input("roleArn")] public Input? RoleArn { get; set; } @@ -377,7 +377,7 @@ public InputMap Parameters public Input? StackName { get; set; } /// - /// Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + /// Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. /// /// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. /// @@ -409,7 +409,7 @@ public InputList Tags } /// - /// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + /// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. /// /// Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. /// @@ -419,7 +419,7 @@ public InputList Tags public Input? TemplateBody { get; set; } /// - /// Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + /// Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. /// /// Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. /// diff --git a/sdk/dotnet/CloudFormation/StackSet.cs b/sdk/dotnet/CloudFormation/StackSet.cs index 184dec477e..768d31f8c8 100644 --- a/sdk/dotnet/CloudFormation/StackSet.cs +++ b/sdk/dotnet/CloudFormation/StackSet.cs @@ -58,7 +58,7 @@ public partial class StackSet : global::Pulumi.CustomResource public Output ManagedExecution { get; private set; } = null!; /// - /// The user-specified preferences for how AWS CloudFormation performs a stack set operation. + /// The user-specified preferences for how CloudFormation performs a stack set operation. /// [Output("operationPreferences")] public Output OperationPreferences { get; private set; } = null!; @@ -210,7 +210,7 @@ public InputList Capabilitie public Input? ManagedExecution { get; set; } /// - /// The user-specified preferences for how AWS CloudFormation performs a stack set operation. + /// The user-specified preferences for how CloudFormation performs a stack set operation. /// [Input("operationPreferences")] public Input? OperationPreferences { get; set; } diff --git a/sdk/dotnet/CloudFront/Enums.cs b/sdk/dotnet/CloudFront/Enums.cs index 0b684075ee..4913e0ac40 100644 --- a/sdk/dotnet/CloudFront/Enums.cs +++ b/sdk/dotnet/CloudFront/Enums.cs @@ -69,6 +69,34 @@ private ContinuousDeploymentPolicyTrafficConfigType(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct DistributionOriginGroupSelectionCriteria : IEquatable + { + private readonly string _value; + + private DistributionOriginGroupSelectionCriteria(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DistributionOriginGroupSelectionCriteria Default { get; } = new DistributionOriginGroupSelectionCriteria("default"); + public static DistributionOriginGroupSelectionCriteria MediaQualityBased { get; } = new DistributionOriginGroupSelectionCriteria("media-quality-based"); + + public static bool operator ==(DistributionOriginGroupSelectionCriteria left, DistributionOriginGroupSelectionCriteria right) => left.Equals(right); + public static bool operator !=(DistributionOriginGroupSelectionCriteria left, DistributionOriginGroupSelectionCriteria right) => !left.Equals(right); + + public static explicit operator string(DistributionOriginGroupSelectionCriteria value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DistributionOriginGroupSelectionCriteria other && Equals(other); + public bool Equals(DistributionOriginGroupSelectionCriteria other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// A flag that indicates whether additional CloudWatch metrics are enabled for a given CloudFront distribution. /// diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs index 2454b211eb..cea8a7ae9a 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionCacheBehaviorArgs.cs @@ -102,6 +102,12 @@ public InputList FunctionAssociation set => _functionAssociations = value; } + /// + /// The gRPC configuration for your cache behavior. + /// + [Input("grpcConfig")] + public Input? GrpcConfig { get; set; } + [Input("lambdaFunctionAssociations")] private InputList? _lambdaFunctionAssociations; diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs index ded3d0846c..d20ff270f1 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs @@ -96,6 +96,12 @@ public InputList FunctionAssociation set => _functionAssociations = value; } + /// + /// The gRPC configuration for your cache behavior. + /// + [Input("grpcConfig")] + public Input? GrpcConfig { get; set; } + [Input("lambdaFunctionAssociations")] private InputList? _lambdaFunctionAssociations; diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionGrpcConfigArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionGrpcConfigArgs.cs new file mode 100644 index 0000000000..ea24376e2c --- /dev/null +++ b/sdk/dotnet/CloudFront/Inputs/DistributionGrpcConfigArgs.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.CloudFront.Inputs +{ + + public sealed class DistributionGrpcConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + /// + [Input("enabled", required: true)] + public Input Enabled { get; set; } = null!; + + public DistributionGrpcConfigArgs() + { + } + public static new DistributionGrpcConfigArgs Empty => new DistributionGrpcConfigArgs(); + } +} diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionLoggingArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionLoggingArgs.cs index 66da08b867..36f61b80d8 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionLoggingArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionLoggingArgs.cs @@ -18,8 +18,8 @@ public sealed class DistributionLoggingArgs : global::Pulumi.ResourceArgs /// /// The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. /// - [Input("bucket", required: true)] - public Input Bucket { get; set; } = null!; + [Input("bucket")] + public Input? Bucket { get; set; } /// /// Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionOriginGroupArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionOriginGroupArgs.cs index 17ed5ed874..595c271bca 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionOriginGroupArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionOriginGroupArgs.cs @@ -33,6 +33,12 @@ public sealed class DistributionOriginGroupArgs : global::Pulumi.ResourceArgs [Input("members", required: true)] public Input Members { get; set; } = null!; + /// + /// The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + /// + [Input("selectionCriteria")] + public Input? SelectionCriteria { get; set; } + public DistributionOriginGroupArgs() { } diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs b/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs index 9a574de0fe..9654dd2d90 100644 --- a/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs +++ b/sdk/dotnet/CloudFront/Outputs/DistributionCacheBehavior.cs @@ -70,6 +70,10 @@ public sealed class DistributionCacheBehavior /// public readonly ImmutableArray FunctionAssociations; /// + /// The gRPC configuration for your cache behavior. + /// + public readonly Outputs.DistributionGrpcConfig? GrpcConfig; + /// /// A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. /// public readonly ImmutableArray LambdaFunctionAssociations; @@ -151,6 +155,8 @@ private DistributionCacheBehavior( ImmutableArray functionAssociations, + Outputs.DistributionGrpcConfig? grpcConfig, + ImmutableArray lambdaFunctionAssociations, double? maxTtl, @@ -183,6 +189,7 @@ private DistributionCacheBehavior( FieldLevelEncryptionId = fieldLevelEncryptionId; ForwardedValues = forwardedValues; FunctionAssociations = functionAssociations; + GrpcConfig = grpcConfig; LambdaFunctionAssociations = lambdaFunctionAssociations; MaxTtl = maxTtl; MinTtl = minTtl; diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs index 534fccfc71..c93eecb475 100644 --- a/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs +++ b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs @@ -64,6 +64,10 @@ public sealed class DistributionDefaultCacheBehavior /// public readonly ImmutableArray FunctionAssociations; /// + /// The gRPC configuration for your cache behavior. + /// + public readonly Outputs.DistributionGrpcConfig? GrpcConfig; + /// /// A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. /// public readonly ImmutableArray LambdaFunctionAssociations; @@ -138,6 +142,8 @@ private DistributionDefaultCacheBehavior( ImmutableArray functionAssociations, + Outputs.DistributionGrpcConfig? grpcConfig, + ImmutableArray lambdaFunctionAssociations, double? maxTtl, @@ -168,6 +174,7 @@ private DistributionDefaultCacheBehavior( FieldLevelEncryptionId = fieldLevelEncryptionId; ForwardedValues = forwardedValues; FunctionAssociations = functionAssociations; + GrpcConfig = grpcConfig; LambdaFunctionAssociations = lambdaFunctionAssociations; MaxTtl = maxTtl; MinTtl = minTtl; diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionGrpcConfig.cs b/sdk/dotnet/CloudFront/Outputs/DistributionGrpcConfig.cs new file mode 100644 index 0000000000..c67f2e3da7 --- /dev/null +++ b/sdk/dotnet/CloudFront/Outputs/DistributionGrpcConfig.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.CloudFront.Outputs +{ + + [OutputType] + public sealed class DistributionGrpcConfig + { + /// + /// Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + /// + public readonly bool Enabled; + + [OutputConstructor] + private DistributionGrpcConfig(bool enabled) + { + Enabled = enabled; + } + } +} diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionLogging.cs b/sdk/dotnet/CloudFront/Outputs/DistributionLogging.cs index 8711255aee..e40e26ffd0 100644 --- a/sdk/dotnet/CloudFront/Outputs/DistributionLogging.cs +++ b/sdk/dotnet/CloudFront/Outputs/DistributionLogging.cs @@ -19,7 +19,7 @@ public sealed class DistributionLogging /// /// The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. /// - public readonly string Bucket; + public readonly string? Bucket; /// /// Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. /// @@ -31,7 +31,7 @@ public sealed class DistributionLogging [OutputConstructor] private DistributionLogging( - string bucket, + string? bucket, bool? includeCookies, diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionOriginGroup.cs b/sdk/dotnet/CloudFront/Outputs/DistributionOriginGroup.cs index ae131ac349..27288b687b 100644 --- a/sdk/dotnet/CloudFront/Outputs/DistributionOriginGroup.cs +++ b/sdk/dotnet/CloudFront/Outputs/DistributionOriginGroup.cs @@ -28,6 +28,10 @@ public sealed class DistributionOriginGroup /// A complex type that contains information about the origins in an origin group. /// public readonly Outputs.DistributionOriginGroupMembers Members; + /// + /// The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + /// + public readonly Pulumi.AwsNative.CloudFront.DistributionOriginGroupSelectionCriteria? SelectionCriteria; [OutputConstructor] private DistributionOriginGroup( @@ -35,11 +39,14 @@ private DistributionOriginGroup( string id, - Outputs.DistributionOriginGroupMembers members) + Outputs.DistributionOriginGroupMembers members, + + Pulumi.AwsNative.CloudFront.DistributionOriginGroupSelectionCriteria? selectionCriteria) { FailoverCriteria = failoverCriteria; Id = id; Members = members; + SelectionCriteria = selectionCriteria; } } } diff --git a/sdk/dotnet/Connect/Enums.cs b/sdk/dotnet/Connect/Enums.cs index 859baab5e5..612c01d8bb 100644 --- a/sdk/dotnet/Connect/Enums.cs +++ b/sdk/dotnet/Connect/Enums.cs @@ -826,7 +826,8 @@ private RoutingProfileChannel(string value) } /// - /// The publish status of a rule, either draft or published. + /// The publish status of the rule. + /// *Allowed values*: ``DRAFT`` | ``PUBLISHED`` /// [EnumType] public readonly struct RulePublishStatus : IEquatable @@ -856,6 +857,10 @@ private RulePublishStatus(string value) public override string ToString() => _value; } + /// + /// The type of the reference. ``DATE`` must be of type Epoch timestamp. + /// *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + /// [EnumType] public readonly struct RuleReferenceType : IEquatable { @@ -889,7 +894,8 @@ private RuleReferenceType(string value) } /// - /// The type of content. + /// Content type format. + /// *Allowed value*: ``PLAIN_TEXT`` /// [EnumType] public readonly struct RuleSendNotificationActionContentType : IEquatable @@ -919,7 +925,8 @@ private RuleSendNotificationActionContentType(string value) } /// - /// The means of delivery. + /// Notification delivery method. + /// *Allowed value*: ``EMAIL`` /// [EnumType] public readonly struct RuleSendNotificationActionDeliveryMethod : IEquatable @@ -949,7 +956,7 @@ private RuleSendNotificationActionDeliveryMethod(string value) } /// - /// The name of event source. + /// The name of the event source. /// [EnumType] public readonly struct RuleTriggerEventSourceEventSourceName : IEquatable diff --git a/sdk/dotnet/Connect/GetQueue.cs b/sdk/dotnet/Connect/GetQueue.cs index 0e5a6cd2cb..5c160f45f9 100644 --- a/sdk/dotnet/Connect/GetQueue.cs +++ b/sdk/dotnet/Connect/GetQueue.cs @@ -88,6 +88,10 @@ public sealed class GetQueueResult /// public readonly Outputs.QueueOutboundCallerConfig? OutboundCallerConfig; /// + /// The outbound email address ID. + /// + public readonly Outputs.QueueOutboundEmailConfig? OutboundEmailConfig; + /// /// The Amazon Resource Name (ARN) for the queue. /// public readonly string? QueueArn; @@ -122,6 +126,8 @@ private GetQueueResult( Outputs.QueueOutboundCallerConfig? outboundCallerConfig, + Outputs.QueueOutboundEmailConfig? outboundEmailConfig, + string? queueArn, ImmutableArray quickConnectArns, @@ -138,6 +144,7 @@ private GetQueueResult( MaxContacts = maxContacts; Name = name; OutboundCallerConfig = outboundCallerConfig; + OutboundEmailConfig = outboundEmailConfig; QueueArn = queueArn; QuickConnectArns = quickConnectArns; Status = status; diff --git a/sdk/dotnet/Connect/GetRule.cs b/sdk/dotnet/Connect/GetRule.cs index bf106ecce4..56f3c54840 100644 --- a/sdk/dotnet/Connect/GetRule.cs +++ b/sdk/dotnet/Connect/GetRule.cs @@ -12,19 +12,19 @@ namespace Pulumi.AwsNative.Connect public static class GetRule { /// - /// Resource Type definition for AWS:Connect::Rule + /// Creates a rule for the specified CON instance. /// public static Task InvokeAsync(GetRuleArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:connect:getRule", args ?? new GetRuleArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS:Connect::Rule + /// Creates a rule for the specified CON instance. /// public static Output Invoke(GetRuleInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:connect:getRule", args ?? new GetRuleInvokeArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS:Connect::Rule + /// Creates a rule for the specified CON instance. /// public static Output Invoke(GetRuleInvokeArgs args, InvokeOutputOptions options) => global::Pulumi.Deployment.Instance.Invoke("aws-native:connect:getRule", args ?? new GetRuleInvokeArgs(), options.WithDefaults()); @@ -64,11 +64,11 @@ public GetRuleInvokeArgs() public sealed class GetRuleResult { /// - /// The list of actions that will be executed when a rule is triggered. + /// A list of actions to be run when the rule is triggered. /// public readonly Outputs.RuleActions? Actions; /// - /// The conditions of a rule. + /// The conditions of the rule. /// public readonly string? Function; /// @@ -76,7 +76,8 @@ public sealed class GetRuleResult /// public readonly string? Name; /// - /// The publish status of a rule, either draft or published. + /// The publish status of the rule. + /// *Allowed values*: ``DRAFT`` | ``PUBLISHED`` /// public readonly Pulumi.AwsNative.Connect.RulePublishStatus? PublishStatus; /// @@ -84,7 +85,7 @@ public sealed class GetRuleResult /// public readonly string? RuleArn; /// - /// One or more tags. + /// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. /// public readonly ImmutableArray Tags; diff --git a/sdk/dotnet/Connect/Inputs/HoursOfOperationOverrideArgs.cs b/sdk/dotnet/Connect/Inputs/HoursOfOperationOverrideArgs.cs index 5306b3fb5e..0e9a5689cd 100644 --- a/sdk/dotnet/Connect/Inputs/HoursOfOperationOverrideArgs.cs +++ b/sdk/dotnet/Connect/Inputs/HoursOfOperationOverrideArgs.cs @@ -15,12 +15,21 @@ namespace Pulumi.AwsNative.Connect.Inputs /// public sealed class HoursOfOperationOverrideArgs : global::Pulumi.ResourceArgs { + /// + /// The date from which the hours of operation override would be effective. + /// [Input("effectiveFrom", required: true)] public Input EffectiveFrom { get; set; } = null!; + /// + /// The date till which the hours of operation override would be effective. + /// [Input("effectiveTill", required: true)] public Input EffectiveTill { get; set; } = null!; + /// + /// The identifier for the hours of operation override. + /// [Input("hoursOfOperationOverrideId")] public Input? HoursOfOperationOverrideId { get; set; } diff --git a/sdk/dotnet/Connect/Inputs/QueueOutboundEmailConfigArgs.cs b/sdk/dotnet/Connect/Inputs/QueueOutboundEmailConfigArgs.cs new file mode 100644 index 0000000000..5f01b4f153 --- /dev/null +++ b/sdk/dotnet/Connect/Inputs/QueueOutboundEmailConfigArgs.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.Connect.Inputs +{ + + /// + /// The outbound email address ID. + /// + public sealed class QueueOutboundEmailConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// The identifier of the email address. + /// + [Input("outboundEmailAddressId")] + public Input? OutboundEmailAddressId { get; set; } + + public QueueOutboundEmailConfigArgs() + { + } + public static new QueueOutboundEmailConfigArgs Empty => new QueueOutboundEmailConfigArgs(); + } +} diff --git a/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs b/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs index da2ab26ea8..c1f2bbe91b 100644 --- a/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Connect.Inputs { /// - /// The list of actions that will be executed when a rule is triggered. + /// A list of actions to be run when the rule is triggered. /// public sealed class RuleActionsArgs : global::Pulumi.ResourceArgs { @@ -19,7 +19,7 @@ public sealed class RuleActionsArgs : global::Pulumi.ResourceArgs private InputList? _assignContactCategoryActions; /// - /// Information about the contact category action. The syntax can be empty, for example, `{}` . + /// Information about the contact category action. The syntax can be empty, for example, ``{}``. /// public InputList AssignContactCategoryActions { @@ -47,7 +47,7 @@ public InputList EndAssociatedTasksActi private InputList? _eventBridgeActions; /// - /// Information about the EventBridge action. + /// Information about the EV action. /// public InputList EventBridgeActions { @@ -79,7 +79,7 @@ public InputList SubmitAutoEvaluation private InputList? _taskActions; /// - /// Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + /// Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` /// public InputList TaskActions { diff --git a/sdk/dotnet/Connect/Inputs/RuleCreateCaseActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleCreateCaseActionArgs.cs index fc11c03fd5..ce815a4d30 100644 --- a/sdk/dotnet/Connect/Inputs/RuleCreateCaseActionArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleCreateCaseActionArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.Connect.Inputs { - /// - /// The definition for create case action. - /// public sealed class RuleCreateCaseActionArgs : global::Pulumi.ResourceArgs { [Input("fields", required: true)] @@ -23,9 +20,6 @@ public InputList Fields set => _fields = value; } - /// - /// The Id of template. - /// [Input("templateId", required: true)] public Input TemplateId { get; set; } = null!; diff --git a/sdk/dotnet/Connect/Inputs/RuleEventBridgeActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleEventBridgeActionArgs.cs index 459fca68f9..aed8aa62f0 100644 --- a/sdk/dotnet/Connect/Inputs/RuleEventBridgeActionArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleEventBridgeActionArgs.cs @@ -11,12 +11,12 @@ namespace Pulumi.AwsNative.Connect.Inputs { /// - /// The definition for event bridge action. + /// The EV action definition. /// public sealed class RuleEventBridgeActionArgs : global::Pulumi.ResourceArgs { /// - /// The name of the event bridge action. + /// The name. /// [Input("name", required: true)] public Input Name { get; set; } = null!; diff --git a/sdk/dotnet/Connect/Inputs/RuleFieldArgs.cs b/sdk/dotnet/Connect/Inputs/RuleFieldArgs.cs index 7be0131339..ea73789592 100644 --- a/sdk/dotnet/Connect/Inputs/RuleFieldArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleFieldArgs.cs @@ -10,14 +10,8 @@ namespace Pulumi.AwsNative.Connect.Inputs { - /// - /// The field of the case. - /// public sealed class RuleFieldArgs : global::Pulumi.ResourceArgs { - /// - /// The Id of the field - /// [Input("id", required: true)] public Input Id { get; set; } = null!; diff --git a/sdk/dotnet/Connect/Inputs/RuleFieldValueArgs.cs b/sdk/dotnet/Connect/Inputs/RuleFieldValueArgs.cs index 84cda5e577..b40337089f 100644 --- a/sdk/dotnet/Connect/Inputs/RuleFieldValueArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleFieldValueArgs.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Connect.Inputs { /// - /// The value of the field. + /// Object for case field values. /// public sealed class RuleFieldValueArgs : global::Pulumi.ResourceArgs { diff --git a/sdk/dotnet/Connect/Inputs/RuleNotificationRecipientTypeArgs.cs b/sdk/dotnet/Connect/Inputs/RuleNotificationRecipientTypeArgs.cs index 0535204aac..e4740ffd9c 100644 --- a/sdk/dotnet/Connect/Inputs/RuleNotificationRecipientTypeArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleNotificationRecipientTypeArgs.cs @@ -19,7 +19,7 @@ public sealed class RuleNotificationRecipientTypeArgs : global::Pulumi.ResourceA private InputList? _userArns; /// - /// The list of recipients by user arns. + /// The Amazon Resource Name (ARN) of the user account. /// public InputList UserArns { @@ -31,7 +31,7 @@ public InputList UserArns private InputMap? _userTags; /// - /// The collection of recipients who are identified by user tags + /// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. /// public InputMap UserTags { diff --git a/sdk/dotnet/Connect/Inputs/RuleReferenceArgs.cs b/sdk/dotnet/Connect/Inputs/RuleReferenceArgs.cs index 948b71c078..3eeee29dac 100644 --- a/sdk/dotnet/Connect/Inputs/RuleReferenceArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleReferenceArgs.cs @@ -11,13 +11,20 @@ namespace Pulumi.AwsNative.Connect.Inputs { /// - /// A contact reference. + /// Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) /// public sealed class RuleReferenceArgs : global::Pulumi.ResourceArgs { + /// + /// The type of the reference. ``DATE`` must be of type Epoch timestamp. + /// *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + /// [Input("type", required: true)] public Input Type { get; set; } = null!; + /// + /// A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Connect/Inputs/RuleSendNotificationActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleSendNotificationActionArgs.cs index ba2348f88d..322c7b56ac 100644 --- a/sdk/dotnet/Connect/Inputs/RuleSendNotificationActionArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleSendNotificationActionArgs.cs @@ -11,33 +11,38 @@ namespace Pulumi.AwsNative.Connect.Inputs { /// - /// The definition for sending notification action. + /// Information about the send notification action. /// public sealed class RuleSendNotificationActionArgs : global::Pulumi.ResourceArgs { /// - /// The content of notification. + /// Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// [Input("content", required: true)] public Input Content { get; set; } = null!; /// - /// The type of content. + /// Content type format. + /// *Allowed value*: ``PLAIN_TEXT`` /// [Input("contentType", required: true)] public Input ContentType { get; set; } = null!; /// - /// The means of delivery. + /// Notification delivery method. + /// *Allowed value*: ``EMAIL`` /// [Input("deliveryMethod", required: true)] public Input DeliveryMethod { get; set; } = null!; + /// + /// Notification recipient. + /// [Input("recipient", required: true)] public Input Recipient { get; set; } = null!; /// - /// The subject of notification. + /// The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// [Input("subject")] public Input? Subject { get; set; } diff --git a/sdk/dotnet/Connect/Inputs/RuleSubmitAutoEvaluationActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleSubmitAutoEvaluationActionArgs.cs index 220602714a..5f919b72c8 100644 --- a/sdk/dotnet/Connect/Inputs/RuleSubmitAutoEvaluationActionArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleSubmitAutoEvaluationActionArgs.cs @@ -10,14 +10,8 @@ namespace Pulumi.AwsNative.Connect.Inputs { - /// - /// The definition of submit auto evaluation action. - /// public sealed class RuleSubmitAutoEvaluationActionArgs : global::Pulumi.ResourceArgs { - /// - /// The Amazon Resource Name (ARN) of the evaluation form. - /// [Input("evaluationFormArn", required: true)] public Input EvaluationFormArn { get; set; } = null!; diff --git a/sdk/dotnet/Connect/Inputs/RuleTaskActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleTaskActionArgs.cs index 93d3f47f3f..f36942599e 100644 --- a/sdk/dotnet/Connect/Inputs/RuleTaskActionArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleTaskActionArgs.cs @@ -11,24 +11,24 @@ namespace Pulumi.AwsNative.Connect.Inputs { /// - /// The definition of task action. + /// Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` /// public sealed class RuleTaskActionArgs : global::Pulumi.ResourceArgs { /// - /// The Amazon Resource Name (ARN) of the contact flow. + /// The Amazon Resource Name (ARN) of the flow. /// [Input("contactFlowArn", required: true)] public Input ContactFlowArn { get; set; } = null!; /// - /// The description which appears in the agent's Contact Control Panel (CCP). + /// The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// [Input("description")] public Input? Description { get; set; } /// - /// The name which appears in the agent's Contact Control Panel (CCP). + /// The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// [Input("name", required: true)] public Input Name { get; set; } = null!; @@ -37,7 +37,7 @@ public sealed class RuleTaskActionArgs : global::Pulumi.ResourceArgs private InputMap? _references; /// - /// A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + /// Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) /// public InputMap References { diff --git a/sdk/dotnet/Connect/Inputs/RuleTriggerEventSourceArgs.cs b/sdk/dotnet/Connect/Inputs/RuleTriggerEventSourceArgs.cs index 1e831013f6..acb8869fd1 100644 --- a/sdk/dotnet/Connect/Inputs/RuleTriggerEventSourceArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleTriggerEventSourceArgs.cs @@ -11,18 +11,18 @@ namespace Pulumi.AwsNative.Connect.Inputs { /// - /// The event source that will trigger the rule. + /// The name of the event source. /// public sealed class RuleTriggerEventSourceArgs : global::Pulumi.ResourceArgs { /// - /// The name of event source. + /// The name of the event source. /// [Input("eventSourceName", required: true)] public Input EventSourceName { get; set; } = null!; /// - /// The Amazon Resource Name (ARN) for the AppIntegration association. + /// The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` /// [Input("integrationAssociationArn")] public Input? IntegrationAssociationArn { get; set; } diff --git a/sdk/dotnet/Connect/Inputs/RuleUpdateCaseActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleUpdateCaseActionArgs.cs index 5c8351769c..fa69b9eb34 100644 --- a/sdk/dotnet/Connect/Inputs/RuleUpdateCaseActionArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleUpdateCaseActionArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.Connect.Inputs { - /// - /// The definition for update case action. - /// public sealed class RuleUpdateCaseActionArgs : global::Pulumi.ResourceArgs { [Input("fields", required: true)] diff --git a/sdk/dotnet/Connect/Inputs/UserIdentityInfoArgs.cs b/sdk/dotnet/Connect/Inputs/UserIdentityInfoArgs.cs index 6d6d3e31f5..33ec38979c 100644 --- a/sdk/dotnet/Connect/Inputs/UserIdentityInfoArgs.cs +++ b/sdk/dotnet/Connect/Inputs/UserIdentityInfoArgs.cs @@ -22,13 +22,13 @@ public sealed class UserIdentityInfoArgs : global::Pulumi.ResourceArgs public Input? Email { get; set; } /// - /// The first name. This is required if you are using Amazon Connect or SAML for identity management. + /// The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. /// [Input("firstName")] public Input? FirstName { get; set; } /// - /// The last name. This is required if you are using Amazon Connect or SAML for identity management. + /// The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. /// [Input("lastName")] public Input? LastName { get; set; } diff --git a/sdk/dotnet/Connect/Outputs/HoursOfOperationOverride.cs b/sdk/dotnet/Connect/Outputs/HoursOfOperationOverride.cs index 95eecd26fa..e6be8b19e6 100644 --- a/sdk/dotnet/Connect/Outputs/HoursOfOperationOverride.cs +++ b/sdk/dotnet/Connect/Outputs/HoursOfOperationOverride.cs @@ -16,8 +16,17 @@ namespace Pulumi.AwsNative.Connect.Outputs [OutputType] public sealed class HoursOfOperationOverride { + /// + /// The date from which the hours of operation override would be effective. + /// public readonly string EffectiveFrom; + /// + /// The date till which the hours of operation override would be effective. + /// public readonly string EffectiveTill; + /// + /// The identifier for the hours of operation override. + /// public readonly string? HoursOfOperationOverrideId; public readonly ImmutableArray OverrideConfig; public readonly string? OverrideDescription; diff --git a/sdk/dotnet/Connect/Outputs/QueueOutboundEmailConfig.cs b/sdk/dotnet/Connect/Outputs/QueueOutboundEmailConfig.cs new file mode 100644 index 0000000000..f4e2e9eab7 --- /dev/null +++ b/sdk/dotnet/Connect/Outputs/QueueOutboundEmailConfig.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.Connect.Outputs +{ + + /// + /// The outbound email address ID. + /// + [OutputType] + public sealed class QueueOutboundEmailConfig + { + /// + /// The identifier of the email address. + /// + public readonly string? OutboundEmailAddressId; + + [OutputConstructor] + private QueueOutboundEmailConfig(string? outboundEmailAddressId) + { + OutboundEmailAddressId = outboundEmailAddressId; + } + } +} diff --git a/sdk/dotnet/Connect/Outputs/RuleActions.cs b/sdk/dotnet/Connect/Outputs/RuleActions.cs index 24f298278f..cac3d99b53 100644 --- a/sdk/dotnet/Connect/Outputs/RuleActions.cs +++ b/sdk/dotnet/Connect/Outputs/RuleActions.cs @@ -11,19 +11,19 @@ namespace Pulumi.AwsNative.Connect.Outputs { /// - /// The list of actions that will be executed when a rule is triggered. + /// A list of actions to be run when the rule is triggered. /// [OutputType] public sealed class RuleActions { /// - /// Information about the contact category action. The syntax can be empty, for example, `{}` . + /// Information about the contact category action. The syntax can be empty, for example, ``{}``. /// public readonly ImmutableArray AssignContactCategoryActions; public readonly ImmutableArray CreateCaseActions; public readonly ImmutableArray EndAssociatedTasksActions; /// - /// Information about the EventBridge action. + /// Information about the EV action. /// public readonly ImmutableArray EventBridgeActions; /// @@ -32,7 +32,7 @@ public sealed class RuleActions public readonly ImmutableArray SendNotificationActions; public readonly ImmutableArray SubmitAutoEvaluationActions; /// - /// Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + /// Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` /// public readonly ImmutableArray TaskActions; public readonly ImmutableArray UpdateCaseActions; diff --git a/sdk/dotnet/Connect/Outputs/RuleCreateCaseAction.cs b/sdk/dotnet/Connect/Outputs/RuleCreateCaseAction.cs index 5dbd7ebd15..750f0800b7 100644 --- a/sdk/dotnet/Connect/Outputs/RuleCreateCaseAction.cs +++ b/sdk/dotnet/Connect/Outputs/RuleCreateCaseAction.cs @@ -10,16 +10,10 @@ namespace Pulumi.AwsNative.Connect.Outputs { - /// - /// The definition for create case action. - /// [OutputType] public sealed class RuleCreateCaseAction { public readonly ImmutableArray Fields; - /// - /// The Id of template. - /// public readonly string TemplateId; [OutputConstructor] diff --git a/sdk/dotnet/Connect/Outputs/RuleEventBridgeAction.cs b/sdk/dotnet/Connect/Outputs/RuleEventBridgeAction.cs index e3a81bd45b..dd5d772f6b 100644 --- a/sdk/dotnet/Connect/Outputs/RuleEventBridgeAction.cs +++ b/sdk/dotnet/Connect/Outputs/RuleEventBridgeAction.cs @@ -11,13 +11,13 @@ namespace Pulumi.AwsNative.Connect.Outputs { /// - /// The definition for event bridge action. + /// The EV action definition. /// [OutputType] public sealed class RuleEventBridgeAction { /// - /// The name of the event bridge action. + /// The name. /// public readonly string Name; diff --git a/sdk/dotnet/Connect/Outputs/RuleField.cs b/sdk/dotnet/Connect/Outputs/RuleField.cs index b32e5af7ba..0c74a70d35 100644 --- a/sdk/dotnet/Connect/Outputs/RuleField.cs +++ b/sdk/dotnet/Connect/Outputs/RuleField.cs @@ -10,15 +10,9 @@ namespace Pulumi.AwsNative.Connect.Outputs { - /// - /// The field of the case. - /// [OutputType] public sealed class RuleField { - /// - /// The Id of the field - /// public readonly string Id; public readonly Outputs.RuleFieldValue Value; diff --git a/sdk/dotnet/Connect/Outputs/RuleFieldValue.cs b/sdk/dotnet/Connect/Outputs/RuleFieldValue.cs index 786091cd9c..a362421ec6 100644 --- a/sdk/dotnet/Connect/Outputs/RuleFieldValue.cs +++ b/sdk/dotnet/Connect/Outputs/RuleFieldValue.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Connect.Outputs { /// - /// The value of the field. + /// Object for case field values. /// [OutputType] public sealed class RuleFieldValue diff --git a/sdk/dotnet/Connect/Outputs/RuleNotificationRecipientType.cs b/sdk/dotnet/Connect/Outputs/RuleNotificationRecipientType.cs index 2ef39e9033..52dabc8afa 100644 --- a/sdk/dotnet/Connect/Outputs/RuleNotificationRecipientType.cs +++ b/sdk/dotnet/Connect/Outputs/RuleNotificationRecipientType.cs @@ -17,11 +17,11 @@ namespace Pulumi.AwsNative.Connect.Outputs public sealed class RuleNotificationRecipientType { /// - /// The list of recipients by user arns. + /// The Amazon Resource Name (ARN) of the user account. /// public readonly ImmutableArray UserArns; /// - /// The collection of recipients who are identified by user tags + /// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. /// public readonly ImmutableDictionary? UserTags; diff --git a/sdk/dotnet/Connect/Outputs/RuleReference.cs b/sdk/dotnet/Connect/Outputs/RuleReference.cs index b931fa12ac..3356bcc0ad 100644 --- a/sdk/dotnet/Connect/Outputs/RuleReference.cs +++ b/sdk/dotnet/Connect/Outputs/RuleReference.cs @@ -11,12 +11,19 @@ namespace Pulumi.AwsNative.Connect.Outputs { /// - /// A contact reference. + /// Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) /// [OutputType] public sealed class RuleReference { + /// + /// The type of the reference. ``DATE`` must be of type Epoch timestamp. + /// *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + /// public readonly Pulumi.AwsNative.Connect.RuleReferenceType Type; + /// + /// A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + /// public readonly string Value; [OutputConstructor] diff --git a/sdk/dotnet/Connect/Outputs/RuleSendNotificationAction.cs b/sdk/dotnet/Connect/Outputs/RuleSendNotificationAction.cs index 971aea13be..0df8f16901 100644 --- a/sdk/dotnet/Connect/Outputs/RuleSendNotificationAction.cs +++ b/sdk/dotnet/Connect/Outputs/RuleSendNotificationAction.cs @@ -11,26 +11,31 @@ namespace Pulumi.AwsNative.Connect.Outputs { /// - /// The definition for sending notification action. + /// Information about the send notification action. /// [OutputType] public sealed class RuleSendNotificationAction { /// - /// The content of notification. + /// Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// public readonly string Content; /// - /// The type of content. + /// Content type format. + /// *Allowed value*: ``PLAIN_TEXT`` /// public readonly Pulumi.AwsNative.Connect.RuleSendNotificationActionContentType ContentType; /// - /// The means of delivery. + /// Notification delivery method. + /// *Allowed value*: ``EMAIL`` /// public readonly Pulumi.AwsNative.Connect.RuleSendNotificationActionDeliveryMethod DeliveryMethod; + /// + /// Notification recipient. + /// public readonly Outputs.RuleNotificationRecipientType Recipient; /// - /// The subject of notification. + /// The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// public readonly string? Subject; diff --git a/sdk/dotnet/Connect/Outputs/RuleSubmitAutoEvaluationAction.cs b/sdk/dotnet/Connect/Outputs/RuleSubmitAutoEvaluationAction.cs index 1f1ce0ed21..681f07a6be 100644 --- a/sdk/dotnet/Connect/Outputs/RuleSubmitAutoEvaluationAction.cs +++ b/sdk/dotnet/Connect/Outputs/RuleSubmitAutoEvaluationAction.cs @@ -10,15 +10,9 @@ namespace Pulumi.AwsNative.Connect.Outputs { - /// - /// The definition of submit auto evaluation action. - /// [OutputType] public sealed class RuleSubmitAutoEvaluationAction { - /// - /// The Amazon Resource Name (ARN) of the evaluation form. - /// public readonly string EvaluationFormArn; [OutputConstructor] diff --git a/sdk/dotnet/Connect/Outputs/RuleTaskAction.cs b/sdk/dotnet/Connect/Outputs/RuleTaskAction.cs index 9c3ac12b5d..b978122496 100644 --- a/sdk/dotnet/Connect/Outputs/RuleTaskAction.cs +++ b/sdk/dotnet/Connect/Outputs/RuleTaskAction.cs @@ -11,25 +11,25 @@ namespace Pulumi.AwsNative.Connect.Outputs { /// - /// The definition of task action. + /// Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` /// [OutputType] public sealed class RuleTaskAction { /// - /// The Amazon Resource Name (ARN) of the contact flow. + /// The Amazon Resource Name (ARN) of the flow. /// public readonly string ContactFlowArn; /// - /// The description which appears in the agent's Contact Control Panel (CCP). + /// The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// public readonly string? Description; /// - /// The name which appears in the agent's Contact Control Panel (CCP). + /// The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. /// public readonly string Name; /// - /// A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + /// Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) /// public readonly ImmutableDictionary? References; diff --git a/sdk/dotnet/Connect/Outputs/RuleTriggerEventSource.cs b/sdk/dotnet/Connect/Outputs/RuleTriggerEventSource.cs index 9ad0f8b491..73205b41b9 100644 --- a/sdk/dotnet/Connect/Outputs/RuleTriggerEventSource.cs +++ b/sdk/dotnet/Connect/Outputs/RuleTriggerEventSource.cs @@ -11,17 +11,17 @@ namespace Pulumi.AwsNative.Connect.Outputs { /// - /// The event source that will trigger the rule. + /// The name of the event source. /// [OutputType] public sealed class RuleTriggerEventSource { /// - /// The name of event source. + /// The name of the event source. /// public readonly Pulumi.AwsNative.Connect.RuleTriggerEventSourceEventSourceName EventSourceName; /// - /// The Amazon Resource Name (ARN) for the AppIntegration association. + /// The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` /// public readonly string? IntegrationAssociationArn; diff --git a/sdk/dotnet/Connect/Outputs/RuleUpdateCaseAction.cs b/sdk/dotnet/Connect/Outputs/RuleUpdateCaseAction.cs index 98fa5086e9..84734a73b9 100644 --- a/sdk/dotnet/Connect/Outputs/RuleUpdateCaseAction.cs +++ b/sdk/dotnet/Connect/Outputs/RuleUpdateCaseAction.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.Connect.Outputs { - /// - /// The definition for update case action. - /// [OutputType] public sealed class RuleUpdateCaseAction { diff --git a/sdk/dotnet/Connect/Outputs/UserIdentityInfo.cs b/sdk/dotnet/Connect/Outputs/UserIdentityInfo.cs index def8dd421e..5723d77c9e 100644 --- a/sdk/dotnet/Connect/Outputs/UserIdentityInfo.cs +++ b/sdk/dotnet/Connect/Outputs/UserIdentityInfo.cs @@ -21,11 +21,11 @@ public sealed class UserIdentityInfo /// public readonly string? Email; /// - /// The first name. This is required if you are using Amazon Connect or SAML for identity management. + /// The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. /// public readonly string? FirstName; /// - /// The last name. This is required if you are using Amazon Connect or SAML for identity management. + /// The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. /// public readonly string? LastName; /// diff --git a/sdk/dotnet/Connect/Queue.cs b/sdk/dotnet/Connect/Queue.cs index 85644b8b3b..08ae9e9dd0 100644 --- a/sdk/dotnet/Connect/Queue.cs +++ b/sdk/dotnet/Connect/Queue.cs @@ -51,6 +51,12 @@ public partial class Queue : global::Pulumi.CustomResource [Output("outboundCallerConfig")] public Output OutboundCallerConfig { get; private set; } = null!; + /// + /// The outbound email address ID. + /// + [Output("outboundEmailConfig")] + public Output OutboundEmailConfig { get; private set; } = null!; + /// /// The Amazon Resource Name (ARN) for the queue. /// @@ -162,6 +168,12 @@ public sealed class QueueArgs : global::Pulumi.ResourceArgs [Input("outboundCallerConfig")] public Input? OutboundCallerConfig { get; set; } + /// + /// The outbound email address ID. + /// + [Input("outboundEmailConfig")] + public Input? OutboundEmailConfig { get; set; } + [Input("quickConnectArns")] private InputList? _quickConnectArns; diff --git a/sdk/dotnet/Connect/Rule.cs b/sdk/dotnet/Connect/Rule.cs index 06b3f3d758..648a97f935 100644 --- a/sdk/dotnet/Connect/Rule.cs +++ b/sdk/dotnet/Connect/Rule.cs @@ -10,19 +10,19 @@ namespace Pulumi.AwsNative.Connect { /// - /// Resource Type definition for AWS:Connect::Rule + /// Creates a rule for the specified CON instance. /// [AwsNativeResourceType("aws-native:connect:Rule")] public partial class Rule : global::Pulumi.CustomResource { /// - /// The list of actions that will be executed when a rule is triggered. + /// A list of actions to be run when the rule is triggered. /// [Output("actions")] public Output Actions { get; private set; } = null!; /// - /// The conditions of a rule. + /// The conditions of the rule. /// [Output("function")] public Output Function { get; private set; } = null!; @@ -40,7 +40,8 @@ public partial class Rule : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// The publish status of a rule, either draft or published. + /// The publish status of the rule. + /// *Allowed values*: ``DRAFT`` | ``PUBLISHED`` /// [Output("publishStatus")] public Output PublishStatus { get; private set; } = null!; @@ -52,13 +53,13 @@ public partial class Rule : global::Pulumi.CustomResource public Output RuleArn { get; private set; } = null!; /// - /// One or more tags. + /// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. /// [Output("tags")] public Output> Tags { get; private set; } = null!; /// - /// The event source that triggers the rule. + /// The event source to trigger the rule. /// [Output("triggerEventSource")] public Output TriggerEventSource { get; private set; } = null!; @@ -114,13 +115,13 @@ public static Rule Get(string name, Input id, CustomResourceOptions? opt public sealed class RuleArgs : global::Pulumi.ResourceArgs { /// - /// The list of actions that will be executed when a rule is triggered. + /// A list of actions to be run when the rule is triggered. /// [Input("actions", required: true)] public Input Actions { get; set; } = null!; /// - /// The conditions of a rule. + /// The conditions of the rule. /// [Input("function", required: true)] public Input Function { get; set; } = null!; @@ -138,7 +139,8 @@ public sealed class RuleArgs : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The publish status of a rule, either draft or published. + /// The publish status of the rule. + /// *Allowed values*: ``DRAFT`` | ``PUBLISHED`` /// [Input("publishStatus", required: true)] public Input PublishStatus { get; set; } = null!; @@ -147,7 +149,7 @@ public sealed class RuleArgs : global::Pulumi.ResourceArgs private InputList? _tags; /// - /// One or more tags. + /// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. /// public InputList Tags { @@ -156,7 +158,7 @@ public InputList Tags } /// - /// The event source that triggers the rule. + /// The event source to trigger the rule. /// [Input("triggerEventSource", required: true)] public Input TriggerEventSource { get; set; } = null!; diff --git a/sdk/dotnet/ConnectCampaignsV2/Inputs/CampaignEventTriggerArgs.cs b/sdk/dotnet/ConnectCampaignsV2/Inputs/CampaignEventTriggerArgs.cs new file mode 100644 index 0000000000..3e190aabc5 --- /dev/null +++ b/sdk/dotnet/ConnectCampaignsV2/Inputs/CampaignEventTriggerArgs.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.ConnectCampaignsV2.Inputs +{ + + /// + /// The event trigger of the campaign + /// + public sealed class CampaignEventTriggerArgs : global::Pulumi.ResourceArgs + { + /// + /// The Amazon Resource Name (ARN) of the Customer Profiles domain. + /// + [Input("customerProfilesDomainArn")] + public Input? CustomerProfilesDomainArn { get; set; } + + public CampaignEventTriggerArgs() + { + } + public static new CampaignEventTriggerArgs Empty => new CampaignEventTriggerArgs(); + } +} diff --git a/sdk/dotnet/ConnectCampaignsV2/Inputs/CampaignSourceArgs.cs b/sdk/dotnet/ConnectCampaignsV2/Inputs/CampaignSourceArgs.cs index fbdeb58021..16f3888978 100644 --- a/sdk/dotnet/ConnectCampaignsV2/Inputs/CampaignSourceArgs.cs +++ b/sdk/dotnet/ConnectCampaignsV2/Inputs/CampaignSourceArgs.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.ConnectCampaignsV2.Inputs { /// - /// The possible types of channel config parameters + /// The possible source of the campaign /// public sealed class CampaignSourceArgs : global::Pulumi.ResourceArgs { @@ -21,6 +21,12 @@ public sealed class CampaignSourceArgs : global::Pulumi.ResourceArgs [Input("customerProfilesSegmentArn")] public Input? CustomerProfilesSegmentArn { get; set; } + /// + /// The event trigger of the campaign. + /// + [Input("eventTrigger")] + public Input? EventTrigger { get; set; } + public CampaignSourceArgs() { } diff --git a/sdk/dotnet/ConnectCampaignsV2/Outputs/CampaignEventTrigger.cs b/sdk/dotnet/ConnectCampaignsV2/Outputs/CampaignEventTrigger.cs new file mode 100644 index 0000000000..d54ac333a7 --- /dev/null +++ b/sdk/dotnet/ConnectCampaignsV2/Outputs/CampaignEventTrigger.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.ConnectCampaignsV2.Outputs +{ + + /// + /// The event trigger of the campaign + /// + [OutputType] + public sealed class CampaignEventTrigger + { + /// + /// The Amazon Resource Name (ARN) of the Customer Profiles domain. + /// + public readonly string? CustomerProfilesDomainArn; + + [OutputConstructor] + private CampaignEventTrigger(string? customerProfilesDomainArn) + { + CustomerProfilesDomainArn = customerProfilesDomainArn; + } + } +} diff --git a/sdk/dotnet/ConnectCampaignsV2/Outputs/CampaignSource.cs b/sdk/dotnet/ConnectCampaignsV2/Outputs/CampaignSource.cs index a975142459..e2527d23e1 100644 --- a/sdk/dotnet/ConnectCampaignsV2/Outputs/CampaignSource.cs +++ b/sdk/dotnet/ConnectCampaignsV2/Outputs/CampaignSource.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.ConnectCampaignsV2.Outputs { /// - /// The possible types of channel config parameters + /// The possible source of the campaign /// [OutputType] public sealed class CampaignSource @@ -20,11 +20,19 @@ public sealed class CampaignSource /// The Amazon Resource Name (ARN) of the Customer Profiles segment. /// public readonly string? CustomerProfilesSegmentArn; + /// + /// The event trigger of the campaign. + /// + public readonly Outputs.CampaignEventTrigger? EventTrigger; [OutputConstructor] - private CampaignSource(string? customerProfilesSegmentArn) + private CampaignSource( + string? customerProfilesSegmentArn, + + Outputs.CampaignEventTrigger? eventTrigger) { CustomerProfilesSegmentArn = customerProfilesSegmentArn; + EventTrigger = eventTrigger; } } } diff --git a/sdk/dotnet/Ec2/Enums.cs b/sdk/dotnet/Ec2/Enums.cs index 4d1b2eb14f..24c602cee5 100644 --- a/sdk/dotnet/Ec2/Enums.cs +++ b/sdk/dotnet/Ec2/Enums.cs @@ -2161,6 +2161,96 @@ private VpcBlockPublicAccessOptionsInternetGatewayBlockMode(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct VpcEndpointDnsOptionsSpecificationDnsRecordIpType : IEquatable + { + private readonly string _value; + + private VpcEndpointDnsOptionsSpecificationDnsRecordIpType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static VpcEndpointDnsOptionsSpecificationDnsRecordIpType Ipv4 { get; } = new VpcEndpointDnsOptionsSpecificationDnsRecordIpType("ipv4"); + public static VpcEndpointDnsOptionsSpecificationDnsRecordIpType Ipv6 { get; } = new VpcEndpointDnsOptionsSpecificationDnsRecordIpType("ipv6"); + public static VpcEndpointDnsOptionsSpecificationDnsRecordIpType Dualstack { get; } = new VpcEndpointDnsOptionsSpecificationDnsRecordIpType("dualstack"); + public static VpcEndpointDnsOptionsSpecificationDnsRecordIpType ServiceDefined { get; } = new VpcEndpointDnsOptionsSpecificationDnsRecordIpType("service-defined"); + public static VpcEndpointDnsOptionsSpecificationDnsRecordIpType NotSpecified { get; } = new VpcEndpointDnsOptionsSpecificationDnsRecordIpType("not-specified"); + + public static bool operator ==(VpcEndpointDnsOptionsSpecificationDnsRecordIpType left, VpcEndpointDnsOptionsSpecificationDnsRecordIpType right) => left.Equals(right); + public static bool operator !=(VpcEndpointDnsOptionsSpecificationDnsRecordIpType left, VpcEndpointDnsOptionsSpecificationDnsRecordIpType right) => !left.Equals(right); + + public static explicit operator string(VpcEndpointDnsOptionsSpecificationDnsRecordIpType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is VpcEndpointDnsOptionsSpecificationDnsRecordIpType other && Equals(other); + public bool Equals(VpcEndpointDnsOptionsSpecificationDnsRecordIpType 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 VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint : IEquatable + { + private readonly string _value; + + private VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint OnlyInboundResolver { get; } = new VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("OnlyInboundResolver"); + public static VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint AllResolvers { get; } = new VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("AllResolvers"); + public static VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint NotSpecified { get; } = new VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("NotSpecified"); + + public static bool operator ==(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint left, VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint right) => left.Equals(right); + public static bool operator !=(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint left, VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint right) => !left.Equals(right); + + public static explicit operator string(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint other && Equals(other); + public bool Equals(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint 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 VpcEndpointIpAddressType : IEquatable + { + private readonly string _value; + + private VpcEndpointIpAddressType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static VpcEndpointIpAddressType Ipv4 { get; } = new VpcEndpointIpAddressType("ipv4"); + public static VpcEndpointIpAddressType Ipv6 { get; } = new VpcEndpointIpAddressType("ipv6"); + public static VpcEndpointIpAddressType Dualstack { get; } = new VpcEndpointIpAddressType("dualstack"); + public static VpcEndpointIpAddressType NotSpecified { get; } = new VpcEndpointIpAddressType("not-specified"); + + public static bool operator ==(VpcEndpointIpAddressType left, VpcEndpointIpAddressType right) => left.Equals(right); + public static bool operator !=(VpcEndpointIpAddressType left, VpcEndpointIpAddressType right) => !left.Equals(right); + + public static explicit operator string(VpcEndpointIpAddressType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is VpcEndpointIpAddressType other && Equals(other); + public bool Equals(VpcEndpointIpAddressType other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// The type of endpoint. /// Default: Gateway @@ -2178,6 +2268,8 @@ private VpcEndpointType(string value) public static VpcEndpointType Interface { get; } = new VpcEndpointType("Interface"); public static VpcEndpointType Gateway { get; } = new VpcEndpointType("Gateway"); public static VpcEndpointType GatewayLoadBalancer { get; } = new VpcEndpointType("GatewayLoadBalancer"); + public static VpcEndpointType ServiceNetwork { get; } = new VpcEndpointType("ServiceNetwork"); + public static VpcEndpointType Resource { get; } = new VpcEndpointType("Resource"); public static bool operator ==(VpcEndpointType left, VpcEndpointType right) => left.Equals(right); public static bool operator !=(VpcEndpointType left, VpcEndpointType right) => !left.Equals(right); diff --git a/sdk/dotnet/Ec2/GetVpcEndpoint.cs b/sdk/dotnet/Ec2/GetVpcEndpoint.cs index 33e855b451..5f2f3c062b 100644 --- a/sdk/dotnet/Ec2/GetVpcEndpoint.cs +++ b/sdk/dotnet/Ec2/GetVpcEndpoint.cs @@ -95,10 +95,12 @@ public sealed class GetVpcEndpointResult /// If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change. /// public readonly ImmutableArray DnsEntries; + public readonly Outputs.VpcEndpointDnsOptionsSpecification? DnsOptions; /// /// The ID of the VPC endpoint. /// public readonly string? Id; + public readonly Pulumi.AwsNative.Ec2.VpcEndpointIpAddressType? IpAddressType; /// /// (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. /// @@ -137,8 +139,12 @@ private GetVpcEndpointResult( ImmutableArray dnsEntries, + Outputs.VpcEndpointDnsOptionsSpecification? dnsOptions, + string? id, + Pulumi.AwsNative.Ec2.VpcEndpointIpAddressType? ipAddressType, + ImmutableArray networkInterfaceIds, object? policyDocument, @@ -153,7 +159,9 @@ private GetVpcEndpointResult( { CreationTimestamp = creationTimestamp; DnsEntries = dnsEntries; + DnsOptions = dnsOptions; Id = id; + IpAddressType = ipAddressType; NetworkInterfaceIds = networkInterfaceIds; PolicyDocument = policyDocument; PrivateDnsEnabled = privateDnsEnabled; diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateCpuArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateCpuArgs.cs index 33663bc93e..04540e82fd 100644 --- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateCpuArgs.cs +++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateCpuArgs.cs @@ -14,6 +14,10 @@ public sealed class LaunchTemplateCpuArgs : global::Pulumi.ResourceArgs { [Input("references")] private InputList? _references; + + /// + /// The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + /// public InputList References { get => _references ?? (_references = new InputList()); diff --git a/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs b/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs index 723e3d65e3..78f8f083d5 100644 --- a/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs +++ b/sdk/dotnet/Ec2/Inputs/LaunchTemplateDataArgs.cs @@ -214,6 +214,9 @@ public InputList NetworkInterfaces set => _networkInterfaces = value; } + [Input("networkPerformanceOptions")] + public Input? NetworkPerformanceOptions { get; set; } + /// /// The placement for the instance. /// diff --git a/sdk/dotnet/Ec2/Inputs/VpcEndpointDnsOptionsSpecificationArgs.cs b/sdk/dotnet/Ec2/Inputs/VpcEndpointDnsOptionsSpecificationArgs.cs new file mode 100644 index 0000000000..58bbdd8990 --- /dev/null +++ b/sdk/dotnet/Ec2/Inputs/VpcEndpointDnsOptionsSpecificationArgs.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.Ec2.Inputs +{ + + public sealed class VpcEndpointDnsOptionsSpecificationArgs : global::Pulumi.ResourceArgs + { + [Input("dnsRecordIpType")] + public Input? DnsRecordIpType { get; set; } + + [Input("privateDnsOnlyForInboundResolverEndpoint")] + public Input? PrivateDnsOnlyForInboundResolverEndpoint { get; set; } + + public VpcEndpointDnsOptionsSpecificationArgs() + { + } + public static new VpcEndpointDnsOptionsSpecificationArgs Empty => new VpcEndpointDnsOptionsSpecificationArgs(); + } +} diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateCpu.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateCpu.cs index 29c34fec3a..a59ccf92f9 100644 --- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateCpu.cs +++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateCpu.cs @@ -13,6 +13,9 @@ namespace Pulumi.AwsNative.Ec2.Outputs [OutputType] public sealed class LaunchTemplateCpu { + /// + /// The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + /// public readonly ImmutableArray References; [OutputConstructor] diff --git a/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs b/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs index 04fae631d0..74940ae1c4 100644 --- a/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs +++ b/sdk/dotnet/Ec2/Outputs/LaunchTemplateData.cs @@ -137,6 +137,7 @@ public sealed class LaunchTemplateData /// The network interfaces for the instance. /// public readonly ImmutableArray NetworkInterfaces; + public readonly object? NetworkPerformanceOptions; /// /// The placement for the instance. /// @@ -222,6 +223,8 @@ private LaunchTemplateData( ImmutableArray networkInterfaces, + object? networkPerformanceOptions, + Outputs.LaunchTemplatePlacement? placement, Outputs.LaunchTemplatePrivateDnsNameOptions? privateDnsNameOptions, @@ -260,6 +263,7 @@ private LaunchTemplateData( MetadataOptions = metadataOptions; Monitoring = monitoring; NetworkInterfaces = networkInterfaces; + NetworkPerformanceOptions = networkPerformanceOptions; Placement = placement; PrivateDnsNameOptions = privateDnsNameOptions; RamDiskId = ramDiskId; diff --git a/sdk/dotnet/Ec2/Outputs/VpcEndpointDnsOptionsSpecification.cs b/sdk/dotnet/Ec2/Outputs/VpcEndpointDnsOptionsSpecification.cs new file mode 100644 index 0000000000..96d827a408 --- /dev/null +++ b/sdk/dotnet/Ec2/Outputs/VpcEndpointDnsOptionsSpecification.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.Ec2.Outputs +{ + + [OutputType] + public sealed class VpcEndpointDnsOptionsSpecification + { + public readonly Pulumi.AwsNative.Ec2.VpcEndpointDnsOptionsSpecificationDnsRecordIpType? DnsRecordIpType; + public readonly Pulumi.AwsNative.Ec2.VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint? PrivateDnsOnlyForInboundResolverEndpoint; + + [OutputConstructor] + private VpcEndpointDnsOptionsSpecification( + Pulumi.AwsNative.Ec2.VpcEndpointDnsOptionsSpecificationDnsRecordIpType? dnsRecordIpType, + + Pulumi.AwsNative.Ec2.VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint? privateDnsOnlyForInboundResolverEndpoint) + { + DnsRecordIpType = dnsRecordIpType; + PrivateDnsOnlyForInboundResolverEndpoint = privateDnsOnlyForInboundResolverEndpoint; + } + } +} diff --git a/sdk/dotnet/Ec2/VpcEndpoint.cs b/sdk/dotnet/Ec2/VpcEndpoint.cs index 8c74fe9524..21d6a64233 100644 --- a/sdk/dotnet/Ec2/VpcEndpoint.cs +++ b/sdk/dotnet/Ec2/VpcEndpoint.cs @@ -45,6 +45,12 @@ public partial class VpcEndpoint : global::Pulumi.CustomResource [Output("dnsEntries")] public Output> DnsEntries { get; private set; } = null!; + [Output("dnsOptions")] + public Output DnsOptions { get; private set; } = null!; + + [Output("ipAddressType")] + public Output IpAddressType { get; private set; } = null!; + /// /// (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. /// @@ -70,6 +76,9 @@ public partial class VpcEndpoint : global::Pulumi.CustomResource [Output("privateDnsEnabled")] public Output PrivateDnsEnabled { get; private set; } = null!; + [Output("resourceConfigurationArn")] + public Output ResourceConfigurationArn { get; private set; } = null!; + /// /// The IDs of the route tables. Routing is supported only for gateway endpoints. /// @@ -86,7 +95,10 @@ public partial class VpcEndpoint : global::Pulumi.CustomResource /// The name of the endpoint service. /// [Output("serviceName")] - public Output ServiceName { get; private set; } = null!; + public Output ServiceName { get; private set; } = null!; + + [Output("serviceNetworkArn")] + public Output ServiceNetworkArn { get; private set; } = null!; /// /// The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. @@ -132,7 +144,9 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "resourceConfigurationArn", "serviceName", + "serviceNetworkArn", "vpcEndpointType", "vpcId", }, @@ -158,6 +172,12 @@ public static VpcEndpoint Get(string name, Input id, CustomResourceOptio public sealed class VpcEndpointArgs : global::Pulumi.ResourceArgs { + [Input("dnsOptions")] + public Input? DnsOptions { get; set; } + + [Input("ipAddressType")] + public Input? IpAddressType { get; set; } + /// /// An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints. /// For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section: @@ -177,6 +197,9 @@ public sealed class VpcEndpointArgs : global::Pulumi.ResourceArgs [Input("privateDnsEnabled")] public Input? PrivateDnsEnabled { get; set; } + [Input("resourceConfigurationArn")] + public Input? ResourceConfigurationArn { get; set; } + [Input("routeTableIds")] private InputList? _routeTableIds; @@ -204,8 +227,11 @@ public InputList SecurityGroupIds /// /// The name of the endpoint service. /// - [Input("serviceName", required: true)] - public Input ServiceName { get; set; } = null!; + [Input("serviceName")] + public Input? ServiceName { get; set; } + + [Input("serviceNetworkArn")] + public Input? ServiceNetworkArn { get; set; } [Input("subnetIds")] private InputList? _subnetIds; diff --git a/sdk/dotnet/Ecs/Enums.cs b/sdk/dotnet/Ecs/Enums.cs index 20c582a1a2..17b3d9d6b6 100644 --- a/sdk/dotnet/Ecs/Enums.cs +++ b/sdk/dotnet/Ecs/Enums.cs @@ -170,8 +170,7 @@ private ClusterCapacityProviderAssociationsCapacityProvider0(string value) /// /// Indicates whether to use Availability Zone rebalancing for the service. - /// - /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. /// [EnumType] public readonly struct ServiceAvailabilityZoneRebalancing : IEquatable @@ -202,7 +201,7 @@ private ServiceAvailabilityZoneRebalancing(string value) } /// - /// Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + /// Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. /// [EnumType] public readonly struct ServiceAwsVpcConfigurationAssignPublicIp : IEquatable diff --git a/sdk/dotnet/Ecs/GetService.cs b/sdk/dotnet/Ecs/GetService.cs index 557ec57dd6..c01bdaa112 100644 --- a/sdk/dotnet/Ecs/GetService.cs +++ b/sdk/dotnet/Ecs/GetService.cs @@ -83,8 +83,7 @@ public sealed class GetServiceResult { /// /// Indicates whether to use Availability Zone rebalancing for the service. - /// - /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. /// public readonly Pulumi.AwsNative.Ecs.ServiceAvailabilityZoneRebalancing? AvailabilityZoneRebalancing; /// @@ -113,9 +112,8 @@ public sealed class GetServiceResult /// public readonly bool? EnableExecuteCommand; /// - /// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - /// If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - /// If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + /// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + /// If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. /// public readonly int? HealthCheckGracePeriodSeconds; /// diff --git a/sdk/dotnet/Ecs/Inputs/ServiceAwsVpcConfigurationArgs.cs b/sdk/dotnet/Ecs/Inputs/ServiceAwsVpcConfigurationArgs.cs index 99f07279fe..c56fdfe3dd 100644 --- a/sdk/dotnet/Ecs/Inputs/ServiceAwsVpcConfigurationArgs.cs +++ b/sdk/dotnet/Ecs/Inputs/ServiceAwsVpcConfigurationArgs.cs @@ -16,7 +16,7 @@ namespace Pulumi.AwsNative.Ecs.Inputs public sealed class ServiceAwsVpcConfigurationArgs : global::Pulumi.ResourceArgs { /// - /// Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + /// Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. /// [Input("assignPublicIp")] public Input? AssignPublicIp { get; set; } diff --git a/sdk/dotnet/Ecs/Inputs/ServiceDeploymentControllerArgs.cs b/sdk/dotnet/Ecs/Inputs/ServiceDeploymentControllerArgs.cs index 8f48cc28e4..e0720efbe9 100644 --- a/sdk/dotnet/Ecs/Inputs/ServiceDeploymentControllerArgs.cs +++ b/sdk/dotnet/Ecs/Inputs/ServiceDeploymentControllerArgs.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Ecs.Inputs { /// - /// The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + /// The deployment controller to use for the service. /// public sealed class ServiceDeploymentControllerArgs : global::Pulumi.ResourceArgs { diff --git a/sdk/dotnet/Ecs/Inputs/ServiceVpcLatticeConfigurationArgs.cs b/sdk/dotnet/Ecs/Inputs/ServiceVpcLatticeConfigurationArgs.cs index e7d45b3a8c..be3e666896 100644 --- a/sdk/dotnet/Ecs/Inputs/ServiceVpcLatticeConfigurationArgs.cs +++ b/sdk/dotnet/Ecs/Inputs/ServiceVpcLatticeConfigurationArgs.cs @@ -10,16 +10,20 @@ namespace Pulumi.AwsNative.Ecs.Inputs { + /// + /// The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + /// public sealed class ServiceVpcLatticeConfigurationArgs : global::Pulumi.ResourceArgs { /// - /// The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + /// The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. /// [Input("portName", required: true)] public Input PortName { get; set; } = null!; /// - /// The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + /// The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + /// infrastructure IAM role that is used to manage your VPC Lattice infrastructure. /// [Input("roleArn", required: true)] public Input RoleArn { get; set; } = null!; diff --git a/sdk/dotnet/Ecs/Inputs/TaskDefinitionEphemeralStorageArgs.cs b/sdk/dotnet/Ecs/Inputs/TaskDefinitionEphemeralStorageArgs.cs index dc855f3cd3..066a6984db 100644 --- a/sdk/dotnet/Ecs/Inputs/TaskDefinitionEphemeralStorageArgs.cs +++ b/sdk/dotnet/Ecs/Inputs/TaskDefinitionEphemeralStorageArgs.cs @@ -19,7 +19,7 @@ namespace Pulumi.AwsNative.Ecs.Inputs public sealed class TaskDefinitionEphemeralStorageArgs : global::Pulumi.ResourceArgs { /// - /// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + /// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. /// [Input("sizeInGiB")] public Input? SizeInGiB { get; set; } diff --git a/sdk/dotnet/Ecs/Outputs/ServiceAwsVpcConfiguration.cs b/sdk/dotnet/Ecs/Outputs/ServiceAwsVpcConfiguration.cs index b6ec1eb88d..5cf6c0b229 100644 --- a/sdk/dotnet/Ecs/Outputs/ServiceAwsVpcConfiguration.cs +++ b/sdk/dotnet/Ecs/Outputs/ServiceAwsVpcConfiguration.cs @@ -17,7 +17,7 @@ namespace Pulumi.AwsNative.Ecs.Outputs public sealed class ServiceAwsVpcConfiguration { /// - /// Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + /// Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. /// public readonly Pulumi.AwsNative.Ecs.ServiceAwsVpcConfigurationAssignPublicIp? AssignPublicIp; /// diff --git a/sdk/dotnet/Ecs/Outputs/ServiceDeploymentController.cs b/sdk/dotnet/Ecs/Outputs/ServiceDeploymentController.cs index fabcc75e67..c046b4a678 100644 --- a/sdk/dotnet/Ecs/Outputs/ServiceDeploymentController.cs +++ b/sdk/dotnet/Ecs/Outputs/ServiceDeploymentController.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Ecs.Outputs { /// - /// The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + /// The deployment controller to use for the service. /// [OutputType] public sealed class ServiceDeploymentController diff --git a/sdk/dotnet/Ecs/Outputs/ServiceVpcLatticeConfiguration.cs b/sdk/dotnet/Ecs/Outputs/ServiceVpcLatticeConfiguration.cs index a3e1844860..1fc82e8359 100644 --- a/sdk/dotnet/Ecs/Outputs/ServiceVpcLatticeConfiguration.cs +++ b/sdk/dotnet/Ecs/Outputs/ServiceVpcLatticeConfiguration.cs @@ -10,15 +10,19 @@ namespace Pulumi.AwsNative.Ecs.Outputs { + /// + /// The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + /// [OutputType] public sealed class ServiceVpcLatticeConfiguration { /// - /// The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + /// The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. /// public readonly string PortName; /// - /// The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + /// The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + /// infrastructure IAM role that is used to manage your VPC Lattice infrastructure. /// public readonly string RoleArn; /// diff --git a/sdk/dotnet/Ecs/Outputs/TaskDefinitionEphemeralStorage.cs b/sdk/dotnet/Ecs/Outputs/TaskDefinitionEphemeralStorage.cs index c95012b2c6..4950abeeb1 100644 --- a/sdk/dotnet/Ecs/Outputs/TaskDefinitionEphemeralStorage.cs +++ b/sdk/dotnet/Ecs/Outputs/TaskDefinitionEphemeralStorage.cs @@ -20,7 +20,7 @@ namespace Pulumi.AwsNative.Ecs.Outputs public sealed class TaskDefinitionEphemeralStorage { /// - /// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + /// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. /// public readonly int? SizeInGiB; diff --git a/sdk/dotnet/Ecs/Service.cs b/sdk/dotnet/Ecs/Service.cs index 7592d643e9..45429a180a 100644 --- a/sdk/dotnet/Ecs/Service.cs +++ b/sdk/dotnet/Ecs/Service.cs @@ -19,8 +19,7 @@ public partial class Service : global::Pulumi.CustomResource { /// /// Indicates whether to use Availability Zone rebalancing for the service. - /// - /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. /// [Output("availabilityZoneRebalancing")] public Output AvailabilityZoneRebalancing { get; private set; } = null!; @@ -73,9 +72,8 @@ public partial class Service : global::Pulumi.CustomResource public Output EnableExecuteCommand { get; private set; } = null!; /// - /// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - /// If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - /// If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + /// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + /// If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. /// [Output("healthCheckGracePeriodSeconds")] public Output HealthCheckGracePeriodSeconds { get; private set; } = null!; @@ -265,8 +263,7 @@ public sealed class ServiceArgs : global::Pulumi.ResourceArgs { /// /// Indicates whether to use Availability Zone rebalancing for the service. - /// - /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + /// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. /// [Input("availabilityZoneRebalancing")] public Input? AvailabilityZoneRebalancing { get; set; } @@ -325,9 +322,8 @@ public InputList CapacityProvide public Input? EnableExecuteCommand { get; set; } /// - /// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - /// If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - /// If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + /// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + /// If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. /// [Input("healthCheckGracePeriodSeconds")] public Input? HealthCheckGracePeriodSeconds { get; set; } diff --git a/sdk/dotnet/EmrServerless/Application.cs b/sdk/dotnet/EmrServerless/Application.cs index a46984123d..b60b4e74f3 100644 --- a/sdk/dotnet/EmrServerless/Application.cs +++ b/sdk/dotnet/EmrServerless/Application.cs @@ -99,6 +99,12 @@ public partial class Application : global::Pulumi.CustomResource [Output("runtimeConfiguration")] public Output> RuntimeConfiguration { get; private set; } = null!; + /// + /// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + /// + [Output("schedulerConfiguration")] + public Output SchedulerConfiguration { get; private set; } = null!; + /// /// Tag map with key and value /// @@ -251,6 +257,12 @@ public InputList RuntimeConfiguration set => _runtimeConfiguration = value; } + /// + /// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + /// + [Input("schedulerConfiguration")] + public Input? SchedulerConfiguration { get; set; } + [Input("tags")] private InputList? _tags; diff --git a/sdk/dotnet/EmrServerless/GetApplication.cs b/sdk/dotnet/EmrServerless/GetApplication.cs index e08ee965ea..faaab1d3c3 100644 --- a/sdk/dotnet/EmrServerless/GetApplication.cs +++ b/sdk/dotnet/EmrServerless/GetApplication.cs @@ -116,6 +116,10 @@ public sealed class GetApplicationResult /// public readonly ImmutableArray RuntimeConfiguration; /// + /// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + /// + public readonly Outputs.ApplicationSchedulerConfiguration? SchedulerConfiguration; + /// /// Tag map with key and value /// public readonly ImmutableArray Tags; @@ -152,6 +156,8 @@ private GetApplicationResult( ImmutableArray runtimeConfiguration, + Outputs.ApplicationSchedulerConfiguration? schedulerConfiguration, + ImmutableArray tags, ImmutableDictionary? workerTypeSpecifications) @@ -169,6 +175,7 @@ private GetApplicationResult( NetworkConfiguration = networkConfiguration; ReleaseLabel = releaseLabel; RuntimeConfiguration = runtimeConfiguration; + SchedulerConfiguration = schedulerConfiguration; Tags = tags; WorkerTypeSpecifications = workerTypeSpecifications; } diff --git a/sdk/dotnet/EmrServerless/Inputs/ApplicationSchedulerConfigurationArgs.cs b/sdk/dotnet/EmrServerless/Inputs/ApplicationSchedulerConfigurationArgs.cs new file mode 100644 index 0000000000..38bbf8bbe3 --- /dev/null +++ b/sdk/dotnet/EmrServerless/Inputs/ApplicationSchedulerConfigurationArgs.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.EmrServerless.Inputs +{ + + /// + /// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + /// + public sealed class ApplicationSchedulerConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + /// + [Input("maxConcurrentRuns")] + public Input? MaxConcurrentRuns { get; set; } + + /// + /// The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + /// + [Input("queueTimeoutMinutes")] + public Input? QueueTimeoutMinutes { get; set; } + + public ApplicationSchedulerConfigurationArgs() + { + } + public static new ApplicationSchedulerConfigurationArgs Empty => new ApplicationSchedulerConfigurationArgs(); + } +} diff --git a/sdk/dotnet/EmrServerless/Outputs/ApplicationSchedulerConfiguration.cs b/sdk/dotnet/EmrServerless/Outputs/ApplicationSchedulerConfiguration.cs new file mode 100644 index 0000000000..2abf42f8f3 --- /dev/null +++ b/sdk/dotnet/EmrServerless/Outputs/ApplicationSchedulerConfiguration.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.EmrServerless.Outputs +{ + + /// + /// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + /// + [OutputType] + public sealed class ApplicationSchedulerConfiguration + { + /// + /// The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + /// + public readonly int? MaxConcurrentRuns; + /// + /// The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + /// + public readonly int? QueueTimeoutMinutes; + + [OutputConstructor] + private ApplicationSchedulerConfiguration( + int? maxConcurrentRuns, + + int? queueTimeoutMinutes) + { + MaxConcurrentRuns = maxConcurrentRuns; + QueueTimeoutMinutes = queueTimeoutMinutes; + } + } +} diff --git a/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParameterArgs.cs b/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParameterArgs.cs index 88e3a7c411..481e13d0c6 100644 --- a/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParameterArgs.cs +++ b/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParameterArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.AwsNative.Events.Inputs public sealed class RuleSageMakerPipelineParameterArgs : global::Pulumi.ResourceArgs { /// - /// Name of parameter to start execution of a SageMaker Model Building Pipeline. + /// Name of parameter to start execution of a SageMaker AI Model Building Pipeline. /// [Input("name", required: true)] public Input Name { get; set; } = null!; /// - /// Value of parameter to start execution of a SageMaker Model Building Pipeline. + /// Value of parameter to start execution of a SageMaker AI Model Building Pipeline. /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParametersArgs.cs b/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParametersArgs.cs index 15e603d049..017ba4a08a 100644 --- a/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParametersArgs.cs +++ b/sdk/dotnet/Events/Inputs/RuleSageMakerPipelineParametersArgs.cs @@ -16,7 +16,7 @@ public sealed class RuleSageMakerPipelineParametersArgs : global::Pulumi.Resourc private InputList? _pipelineParameterList; /// - /// List of Parameter names and values for SageMaker Model Building Pipeline execution. + /// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. /// public InputList PipelineParameterList { diff --git a/sdk/dotnet/Events/Inputs/RuleTargetArgs.cs b/sdk/dotnet/Events/Inputs/RuleTargetArgs.cs index 91201891c0..61218008c8 100644 --- a/sdk/dotnet/Events/Inputs/RuleTargetArgs.cs +++ b/sdk/dotnet/Events/Inputs/RuleTargetArgs.cs @@ -107,9 +107,9 @@ public sealed class RuleTargetArgs : global::Pulumi.ResourceArgs public Input? RunCommandParameters { get; set; } /// - /// Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + /// Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. /// - /// If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + /// If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. /// [Input("sageMakerPipelineParameters")] public Input? SageMakerPipelineParameters { get; set; } diff --git a/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameter.cs b/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameter.cs index d1885046b9..1926b535c2 100644 --- a/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameter.cs +++ b/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameter.cs @@ -14,11 +14,11 @@ namespace Pulumi.AwsNative.Events.Outputs public sealed class RuleSageMakerPipelineParameter { /// - /// Name of parameter to start execution of a SageMaker Model Building Pipeline. + /// Name of parameter to start execution of a SageMaker AI Model Building Pipeline. /// public readonly string Name; /// - /// Value of parameter to start execution of a SageMaker Model Building Pipeline. + /// Value of parameter to start execution of a SageMaker AI Model Building Pipeline. /// public readonly string Value; diff --git a/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameters.cs b/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameters.cs index f97661f06a..f8c4b3cdd2 100644 --- a/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameters.cs +++ b/sdk/dotnet/Events/Outputs/RuleSageMakerPipelineParameters.cs @@ -14,7 +14,7 @@ namespace Pulumi.AwsNative.Events.Outputs public sealed class RuleSageMakerPipelineParameters { /// - /// List of Parameter names and values for SageMaker Model Building Pipeline execution. + /// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. /// public readonly ImmutableArray PipelineParameterList; diff --git a/sdk/dotnet/Events/Outputs/RuleTarget.cs b/sdk/dotnet/Events/Outputs/RuleTarget.cs index 5620875bab..72c4c5486f 100644 --- a/sdk/dotnet/Events/Outputs/RuleTarget.cs +++ b/sdk/dotnet/Events/Outputs/RuleTarget.cs @@ -78,9 +78,9 @@ public sealed class RuleTarget /// public readonly Outputs.RuleRunCommandParameters? RunCommandParameters; /// - /// Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + /// Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. /// - /// If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + /// If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. /// public readonly Outputs.RuleSageMakerPipelineParameters? SageMakerPipelineParameters; /// diff --git a/sdk/dotnet/Fis/Inputs/ExperimentTemplateExperimentReportConfigurationArgs.cs b/sdk/dotnet/Fis/Inputs/ExperimentTemplateExperimentReportConfigurationArgs.cs index db7bf0988e..07e3e6afd8 100644 --- a/sdk/dotnet/Fis/Inputs/ExperimentTemplateExperimentReportConfigurationArgs.cs +++ b/sdk/dotnet/Fis/Inputs/ExperimentTemplateExperimentReportConfigurationArgs.cs @@ -15,8 +15,8 @@ public sealed class ExperimentTemplateExperimentReportConfigurationArgs : global /// /// The data sources for the experiment report. /// - [Input("dataSources", required: true)] - public Input DataSources { get; set; } = null!; + [Input("dataSources")] + public Input? DataSources { get; set; } /// /// The output destinations of the experiment report. diff --git a/sdk/dotnet/Fis/Outputs/ExperimentTemplateExperimentReportConfiguration.cs b/sdk/dotnet/Fis/Outputs/ExperimentTemplateExperimentReportConfiguration.cs index 03105860f2..3615ad118f 100644 --- a/sdk/dotnet/Fis/Outputs/ExperimentTemplateExperimentReportConfiguration.cs +++ b/sdk/dotnet/Fis/Outputs/ExperimentTemplateExperimentReportConfiguration.cs @@ -16,7 +16,7 @@ public sealed class ExperimentTemplateExperimentReportConfiguration /// /// The data sources for the experiment report. /// - public readonly Outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties DataSources; + public readonly Outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties? DataSources; /// /// The output destinations of the experiment report. /// @@ -32,7 +32,7 @@ public sealed class ExperimentTemplateExperimentReportConfiguration [OutputConstructor] private ExperimentTemplateExperimentReportConfiguration( - Outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties dataSources, + Outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties? dataSources, Outputs.ExperimentTemplateExperimentReportConfigurationOutputsProperties outputs, diff --git a/sdk/dotnet/Logs/Enums.cs b/sdk/dotnet/Logs/Enums.cs index 18cba40b9e..413694ba7c 100644 --- a/sdk/dotnet/Logs/Enums.cs +++ b/sdk/dotnet/Logs/Enums.cs @@ -255,6 +255,38 @@ private MetricFilterMetricTransformationUnit(string value) public override string ToString() => _value; } + /// + /// Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + /// + [EnumType] + public readonly struct QueryDefinitionQueryLanguage : IEquatable + { + private readonly string _value; + + private QueryDefinitionQueryLanguage(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static QueryDefinitionQueryLanguage Cwli { get; } = new QueryDefinitionQueryLanguage("CWLI"); + public static QueryDefinitionQueryLanguage Sql { get; } = new QueryDefinitionQueryLanguage("SQL"); + public static QueryDefinitionQueryLanguage Ppl { get; } = new QueryDefinitionQueryLanguage("PPL"); + + public static bool operator ==(QueryDefinitionQueryLanguage left, QueryDefinitionQueryLanguage right) => left.Equals(right); + public static bool operator !=(QueryDefinitionQueryLanguage left, QueryDefinitionQueryLanguage right) => !left.Equals(right); + + public static explicit operator string(QueryDefinitionQueryLanguage value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is QueryDefinitionQueryLanguage other && Equals(other); + public bool Equals(QueryDefinitionQueryLanguage other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// The method used to distribute log data to the destination, which can be either random or grouped by log stream. /// @@ -285,4 +317,62 @@ private SubscriptionFilterDistribution(string value) public override string ToString() => _value; } + + [EnumType] + public readonly struct TransformerProcessorListToMapPropertiesFlattenedElement : IEquatable + { + private readonly string _value; + + private TransformerProcessorListToMapPropertiesFlattenedElement(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static TransformerProcessorListToMapPropertiesFlattenedElement First { get; } = new TransformerProcessorListToMapPropertiesFlattenedElement("first"); + public static TransformerProcessorListToMapPropertiesFlattenedElement Last { get; } = new TransformerProcessorListToMapPropertiesFlattenedElement("last"); + + public static bool operator ==(TransformerProcessorListToMapPropertiesFlattenedElement left, TransformerProcessorListToMapPropertiesFlattenedElement right) => left.Equals(right); + public static bool operator !=(TransformerProcessorListToMapPropertiesFlattenedElement left, TransformerProcessorListToMapPropertiesFlattenedElement right) => !left.Equals(right); + + public static explicit operator string(TransformerProcessorListToMapPropertiesFlattenedElement value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is TransformerProcessorListToMapPropertiesFlattenedElement other && Equals(other); + public bool Equals(TransformerProcessorListToMapPropertiesFlattenedElement 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 TransformerTypeConverterEntryType : IEquatable + { + private readonly string _value; + + private TransformerTypeConverterEntryType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static TransformerTypeConverterEntryType Boolean { get; } = new TransformerTypeConverterEntryType("boolean"); + public static TransformerTypeConverterEntryType Integer { get; } = new TransformerTypeConverterEntryType("integer"); + public static TransformerTypeConverterEntryType Double { get; } = new TransformerTypeConverterEntryType("double"); + public static TransformerTypeConverterEntryType String { get; } = new TransformerTypeConverterEntryType("string"); + + public static bool operator ==(TransformerTypeConverterEntryType left, TransformerTypeConverterEntryType right) => left.Equals(right); + public static bool operator !=(TransformerTypeConverterEntryType left, TransformerTypeConverterEntryType right) => !left.Equals(right); + + public static explicit operator string(TransformerTypeConverterEntryType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is TransformerTypeConverterEntryType other && Equals(other); + public bool Equals(TransformerTypeConverterEntryType 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/Logs/GetLogGroup.cs b/sdk/dotnet/Logs/GetLogGroup.cs index 608773fcf0..f118f832d8 100644 --- a/sdk/dotnet/Logs/GetLogGroup.cs +++ b/sdk/dotnet/Logs/GetLogGroup.cs @@ -86,6 +86,7 @@ public sealed class GetLogGroupResult /// 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; + public readonly ImmutableArray FieldIndexPolicies; /// /// 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. @@ -118,6 +119,8 @@ private GetLogGroupResult( object? dataProtectionPolicy, + ImmutableArray fieldIndexPolicies, + string? kmsKeyId, Pulumi.AwsNative.Logs.LogGroupClass? logGroupClass, @@ -128,6 +131,7 @@ private GetLogGroupResult( { Arn = arn; DataProtectionPolicy = dataProtectionPolicy; + FieldIndexPolicies = fieldIndexPolicies; KmsKeyId = kmsKeyId; LogGroupClass = logGroupClass; RetentionInDays = retentionInDays; diff --git a/sdk/dotnet/Logs/GetMetricFilter.cs b/sdk/dotnet/Logs/GetMetricFilter.cs index c166cdc8b9..e9fc62d58b 100644 --- a/sdk/dotnet/Logs/GetMetricFilter.cs +++ b/sdk/dotnet/Logs/GetMetricFilter.cs @@ -78,6 +78,12 @@ public GetMetricFilterInvokeArgs() [OutputType] public sealed class GetMetricFilterResult { + /// + /// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + /// + /// If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + /// + public readonly bool? ApplyOnTransformedLogs; /// /// 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). /// @@ -89,10 +95,13 @@ public sealed class GetMetricFilterResult [OutputConstructor] private GetMetricFilterResult( + bool? applyOnTransformedLogs, + string? filterPattern, ImmutableArray metricTransformations) { + ApplyOnTransformedLogs = applyOnTransformedLogs; FilterPattern = filterPattern; MetricTransformations = metricTransformations; } diff --git a/sdk/dotnet/Logs/GetQueryDefinition.cs b/sdk/dotnet/Logs/GetQueryDefinition.cs index a3ff3fbb31..214957f8bb 100644 --- a/sdk/dotnet/Logs/GetQueryDefinition.cs +++ b/sdk/dotnet/Logs/GetQueryDefinition.cs @@ -76,6 +76,10 @@ public sealed class GetQueryDefinitionResult /// public readonly string? QueryDefinitionId; /// + /// Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + /// + public readonly Pulumi.AwsNative.Logs.QueryDefinitionQueryLanguage? QueryLanguage; + /// /// The query string to use for this definition /// public readonly string? QueryString; @@ -88,11 +92,14 @@ private GetQueryDefinitionResult( string? queryDefinitionId, + Pulumi.AwsNative.Logs.QueryDefinitionQueryLanguage? queryLanguage, + string? queryString) { LogGroupNames = logGroupNames; Name = name; QueryDefinitionId = queryDefinitionId; + QueryLanguage = queryLanguage; QueryString = queryString; } } diff --git a/sdk/dotnet/Logs/GetSubscriptionFilter.cs b/sdk/dotnet/Logs/GetSubscriptionFilter.cs index 746ad100e2..a656a80e61 100644 --- a/sdk/dotnet/Logs/GetSubscriptionFilter.cs +++ b/sdk/dotnet/Logs/GetSubscriptionFilter.cs @@ -93,6 +93,12 @@ public GetSubscriptionFilterInvokeArgs() [OutputType] public sealed class GetSubscriptionFilterResult { + /// + /// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + /// + /// If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + /// + public readonly bool? ApplyOnTransformedLogs; /// /// The Amazon Resource Name (ARN) of the destination. /// @@ -112,6 +118,8 @@ public sealed class GetSubscriptionFilterResult [OutputConstructor] private GetSubscriptionFilterResult( + bool? applyOnTransformedLogs, + string? destinationArn, Pulumi.AwsNative.Logs.SubscriptionFilterDistribution? distribution, @@ -120,6 +128,7 @@ private GetSubscriptionFilterResult( string? roleArn) { + ApplyOnTransformedLogs = applyOnTransformedLogs; DestinationArn = destinationArn; Distribution = distribution; FilterPattern = filterPattern; diff --git a/sdk/dotnet/Logs/GetTransformer.cs b/sdk/dotnet/Logs/GetTransformer.cs new file mode 100644 index 0000000000..8a0cb052a3 --- /dev/null +++ b/sdk/dotnet/Logs/GetTransformer.cs @@ -0,0 +1,77 @@ +// *** 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.Logs +{ + public static class GetTransformer + { + /// + /// Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + /// + public static Task InvokeAsync(GetTransformerArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:logs:getTransformer", args ?? new GetTransformerArgs(), options.WithDefaults()); + + /// + /// Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + /// + public static Output Invoke(GetTransformerInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getTransformer", args ?? new GetTransformerInvokeArgs(), options.WithDefaults()); + + /// + /// Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + /// + public static Output Invoke(GetTransformerInvokeArgs args, InvokeOutputOptions options) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getTransformer", args ?? new GetTransformerInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetTransformerArgs : global::Pulumi.InvokeArgs + { + /// + /// Existing log group that you want to associate with this transformer. + /// + [Input("logGroupIdentifier", required: true)] + public string LogGroupIdentifier { get; set; } = null!; + + public GetTransformerArgs() + { + } + public static new GetTransformerArgs Empty => new GetTransformerArgs(); + } + + public sealed class GetTransformerInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Existing log group that you want to associate with this transformer. + /// + [Input("logGroupIdentifier", required: true)] + public Input LogGroupIdentifier { get; set; } = null!; + + public GetTransformerInvokeArgs() + { + } + public static new GetTransformerInvokeArgs Empty => new GetTransformerInvokeArgs(); + } + + + [OutputType] + public sealed class GetTransformerResult + { + /// + /// List of processors in a transformer + /// + public readonly ImmutableArray TransformerConfig; + + [OutputConstructor] + private GetTransformerResult(ImmutableArray transformerConfig) + { + TransformerConfig = transformerConfig; + } + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerAddKeyEntryArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerAddKeyEntryArgs.cs new file mode 100644 index 0000000000..fe72f4b258 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerAddKeyEntryArgs.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.Logs.Inputs +{ + + public sealed class TransformerAddKeyEntryArgs : global::Pulumi.ResourceArgs + { + /// + /// The key of the new entry to be added to the log event + /// + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + /// + /// Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + /// + [Input("overwriteIfExists")] + public Input? OverwriteIfExists { get; set; } + + /// + /// The value of the new entry to be added to the log event + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public TransformerAddKeyEntryArgs() + { + } + public static new TransformerAddKeyEntryArgs Empty => new TransformerAddKeyEntryArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerCopyValueEntryArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerCopyValueEntryArgs.cs new file mode 100644 index 0000000000..f561bc1499 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerCopyValueEntryArgs.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.Logs.Inputs +{ + + public sealed class TransformerCopyValueEntryArgs : global::Pulumi.ResourceArgs + { + [Input("overwriteIfExists")] + public Input? OverwriteIfExists { get; set; } + + [Input("source", required: true)] + public Input Source { get; set; } = null!; + + [Input("target", required: true)] + public Input Target { get; set; } = null!; + + public TransformerCopyValueEntryArgs() + { + } + public static new TransformerCopyValueEntryArgs Empty => new TransformerCopyValueEntryArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerMoveKeyEntryArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerMoveKeyEntryArgs.cs new file mode 100644 index 0000000000..d78b094885 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerMoveKeyEntryArgs.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.Logs.Inputs +{ + + public sealed class TransformerMoveKeyEntryArgs : global::Pulumi.ResourceArgs + { + [Input("overwriteIfExists")] + public Input? OverwriteIfExists { get; set; } + + [Input("source", required: true)] + public Input Source { get; set; } = null!; + + [Input("target", required: true)] + public Input Target { get; set; } = null!; + + public TransformerMoveKeyEntryArgs() + { + } + public static new TransformerMoveKeyEntryArgs Empty => new TransformerMoveKeyEntryArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerParseCloudfrontArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerParseCloudfrontArgs.cs new file mode 100644 index 0000000000..56ad01a40a --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerParseCloudfrontArgs.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.Logs.Inputs +{ + + public sealed class TransformerParseCloudfrontArgs : global::Pulumi.ResourceArgs + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + [Input("source")] + public Input? Source { get; set; } + + public TransformerParseCloudfrontArgs() + { + } + public static new TransformerParseCloudfrontArgs Empty => new TransformerParseCloudfrontArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerParsePostgresArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerParsePostgresArgs.cs new file mode 100644 index 0000000000..83c4f3dcf1 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerParsePostgresArgs.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.Logs.Inputs +{ + + public sealed class TransformerParsePostgresArgs : global::Pulumi.ResourceArgs + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + [Input("source")] + public Input? Source { get; set; } + + public TransformerParsePostgresArgs() + { + } + public static new TransformerParsePostgresArgs Empty => new TransformerParsePostgresArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerParseRoute53Args.cs b/sdk/dotnet/Logs/Inputs/TransformerParseRoute53Args.cs new file mode 100644 index 0000000000..c7c35d20a2 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerParseRoute53Args.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.Logs.Inputs +{ + + public sealed class TransformerParseRoute53Args : global::Pulumi.ResourceArgs + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + [Input("source")] + public Input? Source { get; set; } + + public TransformerParseRoute53Args() + { + } + public static new TransformerParseRoute53Args Empty => new TransformerParseRoute53Args(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerParseVpcArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerParseVpcArgs.cs new file mode 100644 index 0000000000..2567adaa9a --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerParseVpcArgs.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.Logs.Inputs +{ + + public sealed class TransformerParseVpcArgs : global::Pulumi.ResourceArgs + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + [Input("source")] + public Input? Source { get; set; } + + public TransformerParseVpcArgs() + { + } + public static new TransformerParseVpcArgs Empty => new TransformerParseVpcArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerParseWafArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerParseWafArgs.cs new file mode 100644 index 0000000000..bf90b6b3af --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerParseWafArgs.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.Logs.Inputs +{ + + public sealed class TransformerParseWafArgs : global::Pulumi.ResourceArgs + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + [Input("source")] + public Input? Source { get; set; } + + public TransformerParseWafArgs() + { + } + public static new TransformerParseWafArgs Empty => new TransformerParseWafArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorAddKeysPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorAddKeysPropertiesArgs.cs new file mode 100644 index 0000000000..52e1727863 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorAddKeysPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + /// + public sealed class TransformerProcessorAddKeysPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("entries", required: true)] + private InputList? _entries; + public InputList Entries + { + get => _entries ?? (_entries = new InputList()); + set => _entries = value; + } + + public TransformerProcessorAddKeysPropertiesArgs() + { + } + public static new TransformerProcessorAddKeysPropertiesArgs Empty => new TransformerProcessorAddKeysPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorArgs.cs new file mode 100644 index 0000000000..98206b3bda --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorArgs.cs @@ -0,0 +1,165 @@ +// *** 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.Logs.Inputs +{ + + /// + /// Individual processor configuration + /// + public sealed class TransformerProcessorArgs : global::Pulumi.ResourceArgs + { + /// + /// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + /// + [Input("addKeys")] + public Input? AddKeys { get; set; } + + /// + /// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + /// + [Input("copyValue")] + public Input? CopyValue { get; set; } + + /// + /// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + /// + [Input("csv")] + public Input? Csv { get; set; } + + /// + /// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + /// + [Input("dateTimeConverter")] + public Input? DateTimeConverter { get; set; } + + /// + /// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + /// + [Input("deleteKeys")] + public Input? DeleteKeys { get; set; } + + /// + /// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + /// + [Input("grok")] + public Input? Grok { get; set; } + + /// + /// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + /// + [Input("listToMap")] + public Input? ListToMap { get; set; } + + /// + /// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + /// + [Input("lowerCaseString")] + public Input? LowerCaseString { get; set; } + + /// + /// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + /// + [Input("moveKeys")] + public Input? MoveKeys { get; set; } + + /// + /// Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + [Input("parseCloudfront")] + public Input? ParseCloudfront { get; set; } + + /// + /// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + /// + [Input("parseJson")] + public Input? ParseJson { get; set; } + + /// + /// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + /// + [Input("parseKeyValue")] + public Input? ParseKeyValue { get; set; } + + /// + /// Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + [Input("parsePostgres")] + public Input? ParsePostgres { get; set; } + + /// + /// Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + [Input("parseRoute53")] + public Input? ParseRoute53 { get; set; } + + /// + /// Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + [Input("parseVpc")] + public Input? ParseVpc { get; set; } + + /// + /// Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + [Input("parseWaf")] + public Input? ParseWaf { get; set; } + + /// + /// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + /// + [Input("renameKeys")] + public Input? RenameKeys { get; set; } + + /// + /// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + /// + [Input("splitString")] + public Input? SplitString { get; set; } + + /// + /// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + /// + [Input("substituteString")] + public Input? SubstituteString { get; set; } + + /// + /// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + /// + [Input("trimString")] + public Input? TrimString { get; set; } + + /// + /// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + /// + [Input("typeConverter")] + public Input? TypeConverter { get; set; } + + /// + /// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + /// + [Input("upperCaseString")] + public Input? UpperCaseString { get; set; } + + public TransformerProcessorArgs() + { + } + public static new TransformerProcessorArgs Empty => new TransformerProcessorArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorCopyValuePropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorCopyValuePropertiesArgs.cs new file mode 100644 index 0000000000..7b0633dfff --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorCopyValuePropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + /// + public sealed class TransformerProcessorCopyValuePropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("entries", required: true)] + private InputList? _entries; + public InputList Entries + { + get => _entries ?? (_entries = new InputList()); + set => _entries = value; + } + + public TransformerProcessorCopyValuePropertiesArgs() + { + } + public static new TransformerProcessorCopyValuePropertiesArgs Empty => new TransformerProcessorCopyValuePropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorCsvPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorCsvPropertiesArgs.cs new file mode 100644 index 0000000000..0396aa7afa --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorCsvPropertiesArgs.cs @@ -0,0 +1,40 @@ +// *** 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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + /// + public sealed class TransformerProcessorCsvPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("columns")] + private InputList? _columns; + public InputList Columns + { + get => _columns ?? (_columns = new InputList()); + set => _columns = value; + } + + [Input("delimiter")] + public Input? Delimiter { get; set; } + + [Input("quoteCharacter")] + public Input? QuoteCharacter { get; set; } + + [Input("source")] + public Input? Source { get; set; } + + public TransformerProcessorCsvPropertiesArgs() + { + } + public static new TransformerProcessorCsvPropertiesArgs Empty => new TransformerProcessorCsvPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorDateTimeConverterPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorDateTimeConverterPropertiesArgs.cs new file mode 100644 index 0000000000..78169cc956 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorDateTimeConverterPropertiesArgs.cs @@ -0,0 +1,49 @@ +// *** 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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + /// + public sealed class TransformerProcessorDateTimeConverterPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("locale")] + public Input? Locale { get; set; } + + [Input("matchPatterns", required: true)] + private InputList? _matchPatterns; + public InputList MatchPatterns + { + get => _matchPatterns ?? (_matchPatterns = new InputList()); + set => _matchPatterns = value; + } + + [Input("source", required: true)] + public Input Source { get; set; } = null!; + + [Input("sourceTimezone")] + public Input? SourceTimezone { get; set; } + + [Input("target", required: true)] + public Input Target { get; set; } = null!; + + [Input("targetFormat")] + public Input? TargetFormat { get; set; } + + [Input("targetTimezone")] + public Input? TargetTimezone { get; set; } + + public TransformerProcessorDateTimeConverterPropertiesArgs() + { + } + public static new TransformerProcessorDateTimeConverterPropertiesArgs Empty => new TransformerProcessorDateTimeConverterPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorDeleteKeysPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorDeleteKeysPropertiesArgs.cs new file mode 100644 index 0000000000..fce91f8fa2 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorDeleteKeysPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + /// + public sealed class TransformerProcessorDeleteKeysPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("withKeys", required: true)] + private InputList? _withKeys; + public InputList WithKeys + { + get => _withKeys ?? (_withKeys = new InputList()); + set => _withKeys = value; + } + + public TransformerProcessorDeleteKeysPropertiesArgs() + { + } + public static new TransformerProcessorDeleteKeysPropertiesArgs Empty => new TransformerProcessorDeleteKeysPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorGrokPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorGrokPropertiesArgs.cs new file mode 100644 index 0000000000..2ed7da39a3 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorGrokPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + /// + public sealed class TransformerProcessorGrokPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("match", required: true)] + public Input Match { get; set; } = null!; + + [Input("source")] + public Input? Source { get; set; } + + public TransformerProcessorGrokPropertiesArgs() + { + } + public static new TransformerProcessorGrokPropertiesArgs Empty => new TransformerProcessorGrokPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorListToMapPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorListToMapPropertiesArgs.cs new file mode 100644 index 0000000000..8b5b4c031d --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorListToMapPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + /// + public sealed class TransformerProcessorListToMapPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("flatten")] + public Input? Flatten { get; set; } + + [Input("flattenedElement")] + public Input? FlattenedElement { get; set; } + + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("source", required: true)] + public Input Source { get; set; } = null!; + + [Input("target")] + public Input? Target { get; set; } + + [Input("valueKey")] + public Input? ValueKey { get; set; } + + public TransformerProcessorListToMapPropertiesArgs() + { + } + public static new TransformerProcessorListToMapPropertiesArgs Empty => new TransformerProcessorListToMapPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorLowerCaseStringPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorLowerCaseStringPropertiesArgs.cs new file mode 100644 index 0000000000..e0f66e5620 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorLowerCaseStringPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + /// + public sealed class TransformerProcessorLowerCaseStringPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("withKeys", required: true)] + private InputList? _withKeys; + public InputList WithKeys + { + get => _withKeys ?? (_withKeys = new InputList()); + set => _withKeys = value; + } + + public TransformerProcessorLowerCaseStringPropertiesArgs() + { + } + public static new TransformerProcessorLowerCaseStringPropertiesArgs Empty => new TransformerProcessorLowerCaseStringPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorMoveKeysPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorMoveKeysPropertiesArgs.cs new file mode 100644 index 0000000000..8623f2a62d --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorMoveKeysPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + /// + public sealed class TransformerProcessorMoveKeysPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("entries", required: true)] + private InputList? _entries; + public InputList Entries + { + get => _entries ?? (_entries = new InputList()); + set => _entries = value; + } + + public TransformerProcessorMoveKeysPropertiesArgs() + { + } + public static new TransformerProcessorMoveKeysPropertiesArgs Empty => new TransformerProcessorMoveKeysPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorParseJsonPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorParseJsonPropertiesArgs.cs new file mode 100644 index 0000000000..d0a5047ce4 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorParseJsonPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + /// + public sealed class TransformerProcessorParseJsonPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("destination")] + public Input? Destination { get; set; } + + [Input("source")] + public Input? Source { get; set; } + + public TransformerProcessorParseJsonPropertiesArgs() + { + } + public static new TransformerProcessorParseJsonPropertiesArgs Empty => new TransformerProcessorParseJsonPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorParseKeyValuePropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorParseKeyValuePropertiesArgs.cs new file mode 100644 index 0000000000..ed00029d3e --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorParseKeyValuePropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + /// + public sealed class TransformerProcessorParseKeyValuePropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("destination")] + public Input? Destination { get; set; } + + [Input("fieldDelimiter")] + public Input? FieldDelimiter { get; set; } + + [Input("keyPrefix")] + public Input? KeyPrefix { get; set; } + + [Input("keyValueDelimiter")] + public Input? KeyValueDelimiter { get; set; } + + [Input("nonMatchValue")] + public Input? NonMatchValue { get; set; } + + [Input("overwriteIfExists")] + public Input? OverwriteIfExists { get; set; } + + [Input("source")] + public Input? Source { get; set; } + + public TransformerProcessorParseKeyValuePropertiesArgs() + { + } + public static new TransformerProcessorParseKeyValuePropertiesArgs Empty => new TransformerProcessorParseKeyValuePropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorRenameKeysPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorRenameKeysPropertiesArgs.cs new file mode 100644 index 0000000000..975fba71f3 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorRenameKeysPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + /// + public sealed class TransformerProcessorRenameKeysPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("entries", required: true)] + private InputList? _entries; + public InputList Entries + { + get => _entries ?? (_entries = new InputList()); + set => _entries = value; + } + + public TransformerProcessorRenameKeysPropertiesArgs() + { + } + public static new TransformerProcessorRenameKeysPropertiesArgs Empty => new TransformerProcessorRenameKeysPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorSplitStringPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorSplitStringPropertiesArgs.cs new file mode 100644 index 0000000000..c265af2491 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorSplitStringPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + /// + public sealed class TransformerProcessorSplitStringPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("entries", required: true)] + private InputList? _entries; + public InputList Entries + { + get => _entries ?? (_entries = new InputList()); + set => _entries = value; + } + + public TransformerProcessorSplitStringPropertiesArgs() + { + } + public static new TransformerProcessorSplitStringPropertiesArgs Empty => new TransformerProcessorSplitStringPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorSubstituteStringPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorSubstituteStringPropertiesArgs.cs new file mode 100644 index 0000000000..b73a898bd9 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorSubstituteStringPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + /// + public sealed class TransformerProcessorSubstituteStringPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("entries", required: true)] + private InputList? _entries; + public InputList Entries + { + get => _entries ?? (_entries = new InputList()); + set => _entries = value; + } + + public TransformerProcessorSubstituteStringPropertiesArgs() + { + } + public static new TransformerProcessorSubstituteStringPropertiesArgs Empty => new TransformerProcessorSubstituteStringPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorTrimStringPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorTrimStringPropertiesArgs.cs new file mode 100644 index 0000000000..18f2ea8e80 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorTrimStringPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + /// + public sealed class TransformerProcessorTrimStringPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("withKeys", required: true)] + private InputList? _withKeys; + public InputList WithKeys + { + get => _withKeys ?? (_withKeys = new InputList()); + set => _withKeys = value; + } + + public TransformerProcessorTrimStringPropertiesArgs() + { + } + public static new TransformerProcessorTrimStringPropertiesArgs Empty => new TransformerProcessorTrimStringPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorTypeConverterPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorTypeConverterPropertiesArgs.cs new file mode 100644 index 0000000000..c5aabb8d39 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorTypeConverterPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + /// + public sealed class TransformerProcessorTypeConverterPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("entries", required: true)] + private InputList? _entries; + public InputList Entries + { + get => _entries ?? (_entries = new InputList()); + set => _entries = value; + } + + public TransformerProcessorTypeConverterPropertiesArgs() + { + } + public static new TransformerProcessorTypeConverterPropertiesArgs Empty => new TransformerProcessorTypeConverterPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerProcessorUpperCaseStringPropertiesArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerProcessorUpperCaseStringPropertiesArgs.cs new file mode 100644 index 0000000000..7c114c74c8 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerProcessorUpperCaseStringPropertiesArgs.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.Logs.Inputs +{ + + /// + /// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + /// + public sealed class TransformerProcessorUpperCaseStringPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("withKeys", required: true)] + private InputList? _withKeys; + public InputList WithKeys + { + get => _withKeys ?? (_withKeys = new InputList()); + set => _withKeys = value; + } + + public TransformerProcessorUpperCaseStringPropertiesArgs() + { + } + public static new TransformerProcessorUpperCaseStringPropertiesArgs Empty => new TransformerProcessorUpperCaseStringPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerRenameKeyEntryArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerRenameKeyEntryArgs.cs new file mode 100644 index 0000000000..ef6eb3ebfd --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerRenameKeyEntryArgs.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.Logs.Inputs +{ + + public sealed class TransformerRenameKeyEntryArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("overwriteIfExists")] + public Input? OverwriteIfExists { get; set; } + + [Input("renameTo", required: true)] + public Input RenameTo { get; set; } = null!; + + public TransformerRenameKeyEntryArgs() + { + } + public static new TransformerRenameKeyEntryArgs Empty => new TransformerRenameKeyEntryArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerSplitStringEntryArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerSplitStringEntryArgs.cs new file mode 100644 index 0000000000..d3f1de0eba --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerSplitStringEntryArgs.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.Logs.Inputs +{ + + public sealed class TransformerSplitStringEntryArgs : global::Pulumi.ResourceArgs + { + [Input("delimiter", required: true)] + public Input Delimiter { get; set; } = null!; + + [Input("source", required: true)] + public Input Source { get; set; } = null!; + + public TransformerSplitStringEntryArgs() + { + } + public static new TransformerSplitStringEntryArgs Empty => new TransformerSplitStringEntryArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerSubstituteStringEntryArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerSubstituteStringEntryArgs.cs new file mode 100644 index 0000000000..30317c9ca2 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerSubstituteStringEntryArgs.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.Logs.Inputs +{ + + public sealed class TransformerSubstituteStringEntryArgs : global::Pulumi.ResourceArgs + { + [Input("from", required: true)] + public Input From { get; set; } = null!; + + [Input("source", required: true)] + public Input Source { get; set; } = null!; + + [Input("to", required: true)] + public Input To { get; set; } = null!; + + public TransformerSubstituteStringEntryArgs() + { + } + public static new TransformerSubstituteStringEntryArgs Empty => new TransformerSubstituteStringEntryArgs(); + } +} diff --git a/sdk/dotnet/Logs/Inputs/TransformerTypeConverterEntryArgs.cs b/sdk/dotnet/Logs/Inputs/TransformerTypeConverterEntryArgs.cs new file mode 100644 index 0000000000..49f4f746f2 --- /dev/null +++ b/sdk/dotnet/Logs/Inputs/TransformerTypeConverterEntryArgs.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.Logs.Inputs +{ + + public sealed class TransformerTypeConverterEntryArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public TransformerTypeConverterEntryArgs() + { + } + public static new TransformerTypeConverterEntryArgs Empty => new TransformerTypeConverterEntryArgs(); + } +} diff --git a/sdk/dotnet/Logs/LogGroup.cs b/sdk/dotnet/Logs/LogGroup.cs index 5790fcaff8..e20017c6b4 100644 --- a/sdk/dotnet/Logs/LogGroup.cs +++ b/sdk/dotnet/Logs/LogGroup.cs @@ -34,6 +34,9 @@ public partial class LogGroup : global::Pulumi.CustomResource [Output("dataProtectionPolicy")] public Output DataProtectionPolicy { get; private set; } = null!; + [Output("fieldIndexPolicies")] + public Output> FieldIndexPolicies { get; private set; } = null!; + /// /// 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. @@ -131,6 +134,14 @@ public sealed class LogGroupArgs : global::Pulumi.ResourceArgs [Input("dataProtectionPolicy")] public Input? DataProtectionPolicy { get; set; } + [Input("fieldIndexPolicies")] + private InputList? _fieldIndexPolicies; + public InputList FieldIndexPolicies + { + get => _fieldIndexPolicies ?? (_fieldIndexPolicies = new InputList()); + set => _fieldIndexPolicies = value; + } + /// /// 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. diff --git a/sdk/dotnet/Logs/MetricFilter.cs b/sdk/dotnet/Logs/MetricFilter.cs index 3de1b6a35e..b019db1d83 100644 --- a/sdk/dotnet/Logs/MetricFilter.cs +++ b/sdk/dotnet/Logs/MetricFilter.cs @@ -16,6 +16,14 @@ namespace Pulumi.AwsNative.Logs [AwsNativeResourceType("aws-native:logs:MetricFilter")] public partial class MetricFilter : global::Pulumi.CustomResource { + /// + /// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + /// + /// If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + /// + [Output("applyOnTransformedLogs")] + public Output ApplyOnTransformedLogs { get; private set; } = null!; + /// /// The name of the metric filter. /// @@ -90,6 +98,14 @@ public static MetricFilter Get(string name, Input id, CustomResourceOpti public sealed class MetricFilterArgs : global::Pulumi.ResourceArgs { + /// + /// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + /// + /// If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + /// + [Input("applyOnTransformedLogs")] + public Input? ApplyOnTransformedLogs { get; set; } + /// /// The name of the metric filter. /// diff --git a/sdk/dotnet/Logs/Outputs/TransformerAddKeyEntry.cs b/sdk/dotnet/Logs/Outputs/TransformerAddKeyEntry.cs new file mode 100644 index 0000000000..5ec249fb30 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerAddKeyEntry.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerAddKeyEntry + { + /// + /// The key of the new entry to be added to the log event + /// + public readonly string Key; + /// + /// Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + /// + public readonly bool? OverwriteIfExists; + /// + /// The value of the new entry to be added to the log event + /// + public readonly string Value; + + [OutputConstructor] + private TransformerAddKeyEntry( + string key, + + bool? overwriteIfExists, + + string value) + { + Key = key; + OverwriteIfExists = overwriteIfExists; + Value = value; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerCopyValueEntry.cs b/sdk/dotnet/Logs/Outputs/TransformerCopyValueEntry.cs new file mode 100644 index 0000000000..e8c983c847 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerCopyValueEntry.cs @@ -0,0 +1,33 @@ +// *** 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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerCopyValueEntry + { + public readonly bool? OverwriteIfExists; + public readonly string Source; + public readonly string Target; + + [OutputConstructor] + private TransformerCopyValueEntry( + bool? overwriteIfExists, + + string source, + + string target) + { + OverwriteIfExists = overwriteIfExists; + Source = source; + Target = target; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerMoveKeyEntry.cs b/sdk/dotnet/Logs/Outputs/TransformerMoveKeyEntry.cs new file mode 100644 index 0000000000..2c5de122f7 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerMoveKeyEntry.cs @@ -0,0 +1,33 @@ +// *** 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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerMoveKeyEntry + { + public readonly bool? OverwriteIfExists; + public readonly string Source; + public readonly string Target; + + [OutputConstructor] + private TransformerMoveKeyEntry( + bool? overwriteIfExists, + + string source, + + string target) + { + OverwriteIfExists = overwriteIfExists; + Source = source; + Target = target; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerParseCloudfront.cs b/sdk/dotnet/Logs/Outputs/TransformerParseCloudfront.cs new file mode 100644 index 0000000000..e24cf5b20b --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerParseCloudfront.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerParseCloudfront + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + public readonly string? Source; + + [OutputConstructor] + private TransformerParseCloudfront(string? source) + { + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerParsePostgres.cs b/sdk/dotnet/Logs/Outputs/TransformerParsePostgres.cs new file mode 100644 index 0000000000..9d241f3640 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerParsePostgres.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerParsePostgres + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + public readonly string? Source; + + [OutputConstructor] + private TransformerParsePostgres(string? source) + { + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerParseRoute53.cs b/sdk/dotnet/Logs/Outputs/TransformerParseRoute53.cs new file mode 100644 index 0000000000..abae56906a --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerParseRoute53.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerParseRoute53 + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + public readonly string? Source; + + [OutputConstructor] + private TransformerParseRoute53(string? source) + { + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerParseVpc.cs b/sdk/dotnet/Logs/Outputs/TransformerParseVpc.cs new file mode 100644 index 0000000000..e5e8c84e08 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerParseVpc.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerParseVpc + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + public readonly string? Source; + + [OutputConstructor] + private TransformerParseVpc(string? source) + { + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerParseWaf.cs b/sdk/dotnet/Logs/Outputs/TransformerParseWaf.cs new file mode 100644 index 0000000000..58c37dc9fb --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerParseWaf.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerParseWaf + { + /// + /// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + /// + public readonly string? Source; + + [OutputConstructor] + private TransformerParseWaf(string? source) + { + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessor.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessor.cs new file mode 100644 index 0000000000..2be9557f0f --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessor.cs @@ -0,0 +1,188 @@ +// *** 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.Logs.Outputs +{ + + /// + /// Individual processor configuration + /// + [OutputType] + public sealed class TransformerProcessor + { + /// + /// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorAddKeysProperties? AddKeys; + /// + /// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorCopyValueProperties? CopyValue; + /// + /// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorCsvProperties? Csv; + /// + /// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorDateTimeConverterProperties? DateTimeConverter; + /// + /// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorDeleteKeysProperties? DeleteKeys; + /// + /// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorGrokProperties? Grok; + /// + /// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorListToMapProperties? ListToMap; + /// + /// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorLowerCaseStringProperties? LowerCaseString; + /// + /// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorMoveKeysProperties? MoveKeys; + /// + /// Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + public readonly Outputs.TransformerParseCloudfront? ParseCloudfront; + /// + /// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorParseJsonProperties? ParseJson; + /// + /// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorParseKeyValueProperties? ParseKeyValue; + /// + /// Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + public readonly Outputs.TransformerParsePostgres? ParsePostgres; + /// + /// Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + public readonly Outputs.TransformerParseRoute53? ParseRoute53; + /// + /// Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + public readonly Outputs.TransformerParseVpc? ParseVpc; + /// + /// Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + /// + /// If you use this processor, it must be the first processor in your transformer. + /// + public readonly Outputs.TransformerParseWaf? ParseWaf; + /// + /// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorRenameKeysProperties? RenameKeys; + /// + /// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorSplitStringProperties? SplitString; + /// + /// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorSubstituteStringProperties? SubstituteString; + /// + /// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorTrimStringProperties? TrimString; + /// + /// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorTypeConverterProperties? TypeConverter; + /// + /// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + /// + public readonly Outputs.TransformerProcessorUpperCaseStringProperties? UpperCaseString; + + [OutputConstructor] + private TransformerProcessor( + Outputs.TransformerProcessorAddKeysProperties? addKeys, + + Outputs.TransformerProcessorCopyValueProperties? copyValue, + + Outputs.TransformerProcessorCsvProperties? csv, + + Outputs.TransformerProcessorDateTimeConverterProperties? dateTimeConverter, + + Outputs.TransformerProcessorDeleteKeysProperties? deleteKeys, + + Outputs.TransformerProcessorGrokProperties? grok, + + Outputs.TransformerProcessorListToMapProperties? listToMap, + + Outputs.TransformerProcessorLowerCaseStringProperties? lowerCaseString, + + Outputs.TransformerProcessorMoveKeysProperties? moveKeys, + + Outputs.TransformerParseCloudfront? parseCloudfront, + + Outputs.TransformerProcessorParseJsonProperties? parseJson, + + Outputs.TransformerProcessorParseKeyValueProperties? parseKeyValue, + + Outputs.TransformerParsePostgres? parsePostgres, + + Outputs.TransformerParseRoute53? parseRoute53, + + Outputs.TransformerParseVpc? parseVpc, + + Outputs.TransformerParseWaf? parseWaf, + + Outputs.TransformerProcessorRenameKeysProperties? renameKeys, + + Outputs.TransformerProcessorSplitStringProperties? splitString, + + Outputs.TransformerProcessorSubstituteStringProperties? substituteString, + + Outputs.TransformerProcessorTrimStringProperties? trimString, + + Outputs.TransformerProcessorTypeConverterProperties? typeConverter, + + Outputs.TransformerProcessorUpperCaseStringProperties? upperCaseString) + { + AddKeys = addKeys; + CopyValue = copyValue; + Csv = csv; + DateTimeConverter = dateTimeConverter; + DeleteKeys = deleteKeys; + Grok = grok; + ListToMap = listToMap; + LowerCaseString = lowerCaseString; + MoveKeys = moveKeys; + ParseCloudfront = parseCloudfront; + ParseJson = parseJson; + ParseKeyValue = parseKeyValue; + ParsePostgres = parsePostgres; + ParseRoute53 = parseRoute53; + ParseVpc = parseVpc; + ParseWaf = parseWaf; + RenameKeys = renameKeys; + SplitString = splitString; + SubstituteString = substituteString; + TrimString = trimString; + TypeConverter = typeConverter; + UpperCaseString = upperCaseString; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorAddKeysProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorAddKeysProperties.cs new file mode 100644 index 0000000000..e7e19b4cfe --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorAddKeysProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorAddKeysProperties + { + public readonly ImmutableArray Entries; + + [OutputConstructor] + private TransformerProcessorAddKeysProperties(ImmutableArray entries) + { + Entries = entries; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorCopyValueProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorCopyValueProperties.cs new file mode 100644 index 0000000000..5f53e8c427 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorCopyValueProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorCopyValueProperties + { + public readonly ImmutableArray Entries; + + [OutputConstructor] + private TransformerProcessorCopyValueProperties(ImmutableArray entries) + { + Entries = entries; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorCsvProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorCsvProperties.cs new file mode 100644 index 0000000000..afd2719a5d --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorCsvProperties.cs @@ -0,0 +1,40 @@ +// *** 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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorCsvProperties + { + public readonly ImmutableArray Columns; + public readonly string? Delimiter; + public readonly string? QuoteCharacter; + public readonly string? Source; + + [OutputConstructor] + private TransformerProcessorCsvProperties( + ImmutableArray columns, + + string? delimiter, + + string? quoteCharacter, + + string? source) + { + Columns = columns; + Delimiter = delimiter; + QuoteCharacter = quoteCharacter; + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorDateTimeConverterProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorDateTimeConverterProperties.cs new file mode 100644 index 0000000000..8a077b35aa --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorDateTimeConverterProperties.cs @@ -0,0 +1,52 @@ +// *** 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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorDateTimeConverterProperties + { + public readonly string? Locale; + public readonly ImmutableArray MatchPatterns; + public readonly string Source; + public readonly string? SourceTimezone; + public readonly string Target; + public readonly string? TargetFormat; + public readonly string? TargetTimezone; + + [OutputConstructor] + private TransformerProcessorDateTimeConverterProperties( + string? locale, + + ImmutableArray matchPatterns, + + string source, + + string? sourceTimezone, + + string target, + + string? targetFormat, + + string? targetTimezone) + { + Locale = locale; + MatchPatterns = matchPatterns; + Source = source; + SourceTimezone = sourceTimezone; + Target = target; + TargetFormat = targetFormat; + TargetTimezone = targetTimezone; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorDeleteKeysProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorDeleteKeysProperties.cs new file mode 100644 index 0000000000..b2a990ec5c --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorDeleteKeysProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorDeleteKeysProperties + { + public readonly ImmutableArray WithKeys; + + [OutputConstructor] + private TransformerProcessorDeleteKeysProperties(ImmutableArray withKeys) + { + WithKeys = withKeys; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorGrokProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorGrokProperties.cs new file mode 100644 index 0000000000..eb67639378 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorGrokProperties.cs @@ -0,0 +1,32 @@ +// *** 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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorGrokProperties + { + public readonly string Match; + public readonly string? Source; + + [OutputConstructor] + private TransformerProcessorGrokProperties( + string match, + + string? source) + { + Match = match; + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorListToMapProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorListToMapProperties.cs new file mode 100644 index 0000000000..e8e780aa3c --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorListToMapProperties.cs @@ -0,0 +1,48 @@ +// *** 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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorListToMapProperties + { + public readonly bool? Flatten; + public readonly Pulumi.AwsNative.Logs.TransformerProcessorListToMapPropertiesFlattenedElement? FlattenedElement; + public readonly string Key; + public readonly string Source; + public readonly string? Target; + public readonly string? ValueKey; + + [OutputConstructor] + private TransformerProcessorListToMapProperties( + bool? flatten, + + Pulumi.AwsNative.Logs.TransformerProcessorListToMapPropertiesFlattenedElement? flattenedElement, + + string key, + + string source, + + string? target, + + string? valueKey) + { + Flatten = flatten; + FlattenedElement = flattenedElement; + Key = key; + Source = source; + Target = target; + ValueKey = valueKey; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorLowerCaseStringProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorLowerCaseStringProperties.cs new file mode 100644 index 0000000000..076cfac71a --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorLowerCaseStringProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorLowerCaseStringProperties + { + public readonly ImmutableArray WithKeys; + + [OutputConstructor] + private TransformerProcessorLowerCaseStringProperties(ImmutableArray withKeys) + { + WithKeys = withKeys; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorMoveKeysProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorMoveKeysProperties.cs new file mode 100644 index 0000000000..df3358ae1a --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorMoveKeysProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorMoveKeysProperties + { + public readonly ImmutableArray Entries; + + [OutputConstructor] + private TransformerProcessorMoveKeysProperties(ImmutableArray entries) + { + Entries = entries; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorParseJsonProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorParseJsonProperties.cs new file mode 100644 index 0000000000..64aa0cd63d --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorParseJsonProperties.cs @@ -0,0 +1,32 @@ +// *** 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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorParseJsonProperties + { + public readonly string? Destination; + public readonly string? Source; + + [OutputConstructor] + private TransformerProcessorParseJsonProperties( + string? destination, + + string? source) + { + Destination = destination; + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorParseKeyValueProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorParseKeyValueProperties.cs new file mode 100644 index 0000000000..382d89d013 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorParseKeyValueProperties.cs @@ -0,0 +1,52 @@ +// *** 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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorParseKeyValueProperties + { + public readonly string? Destination; + public readonly string? FieldDelimiter; + public readonly string? KeyPrefix; + public readonly string? KeyValueDelimiter; + public readonly string? NonMatchValue; + public readonly bool? OverwriteIfExists; + public readonly string? Source; + + [OutputConstructor] + private TransformerProcessorParseKeyValueProperties( + string? destination, + + string? fieldDelimiter, + + string? keyPrefix, + + string? keyValueDelimiter, + + string? nonMatchValue, + + bool? overwriteIfExists, + + string? source) + { + Destination = destination; + FieldDelimiter = fieldDelimiter; + KeyPrefix = keyPrefix; + KeyValueDelimiter = keyValueDelimiter; + NonMatchValue = nonMatchValue; + OverwriteIfExists = overwriteIfExists; + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorRenameKeysProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorRenameKeysProperties.cs new file mode 100644 index 0000000000..7495e8eff8 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorRenameKeysProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorRenameKeysProperties + { + public readonly ImmutableArray Entries; + + [OutputConstructor] + private TransformerProcessorRenameKeysProperties(ImmutableArray entries) + { + Entries = entries; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorSplitStringProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorSplitStringProperties.cs new file mode 100644 index 0000000000..4c22e1792a --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorSplitStringProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorSplitStringProperties + { + public readonly ImmutableArray Entries; + + [OutputConstructor] + private TransformerProcessorSplitStringProperties(ImmutableArray entries) + { + Entries = entries; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorSubstituteStringProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorSubstituteStringProperties.cs new file mode 100644 index 0000000000..070a09a51d --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorSubstituteStringProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorSubstituteStringProperties + { + public readonly ImmutableArray Entries; + + [OutputConstructor] + private TransformerProcessorSubstituteStringProperties(ImmutableArray entries) + { + Entries = entries; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorTrimStringProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorTrimStringProperties.cs new file mode 100644 index 0000000000..80287352a6 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorTrimStringProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorTrimStringProperties + { + public readonly ImmutableArray WithKeys; + + [OutputConstructor] + private TransformerProcessorTrimStringProperties(ImmutableArray withKeys) + { + WithKeys = withKeys; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorTypeConverterProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorTypeConverterProperties.cs new file mode 100644 index 0000000000..6236410f6f --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorTypeConverterProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorTypeConverterProperties + { + public readonly ImmutableArray Entries; + + [OutputConstructor] + private TransformerProcessorTypeConverterProperties(ImmutableArray entries) + { + Entries = entries; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerProcessorUpperCaseStringProperties.cs b/sdk/dotnet/Logs/Outputs/TransformerProcessorUpperCaseStringProperties.cs new file mode 100644 index 0000000000..d820c0e026 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerProcessorUpperCaseStringProperties.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.Logs.Outputs +{ + + /// + /// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + /// + [OutputType] + public sealed class TransformerProcessorUpperCaseStringProperties + { + public readonly ImmutableArray WithKeys; + + [OutputConstructor] + private TransformerProcessorUpperCaseStringProperties(ImmutableArray withKeys) + { + WithKeys = withKeys; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerRenameKeyEntry.cs b/sdk/dotnet/Logs/Outputs/TransformerRenameKeyEntry.cs new file mode 100644 index 0000000000..5acc77a10d --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerRenameKeyEntry.cs @@ -0,0 +1,33 @@ +// *** 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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerRenameKeyEntry + { + public readonly string Key; + public readonly bool? OverwriteIfExists; + public readonly string RenameTo; + + [OutputConstructor] + private TransformerRenameKeyEntry( + string key, + + bool? overwriteIfExists, + + string renameTo) + { + Key = key; + OverwriteIfExists = overwriteIfExists; + RenameTo = renameTo; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerSplitStringEntry.cs b/sdk/dotnet/Logs/Outputs/TransformerSplitStringEntry.cs new file mode 100644 index 0000000000..d905a05d4d --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerSplitStringEntry.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerSplitStringEntry + { + public readonly string Delimiter; + public readonly string Source; + + [OutputConstructor] + private TransformerSplitStringEntry( + string delimiter, + + string source) + { + Delimiter = delimiter; + Source = source; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerSubstituteStringEntry.cs b/sdk/dotnet/Logs/Outputs/TransformerSubstituteStringEntry.cs new file mode 100644 index 0000000000..67f8cf068e --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerSubstituteStringEntry.cs @@ -0,0 +1,33 @@ +// *** 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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerSubstituteStringEntry + { + public readonly string From; + public readonly string Source; + public readonly string To; + + [OutputConstructor] + private TransformerSubstituteStringEntry( + string from, + + string source, + + string to) + { + From = from; + Source = source; + To = to; + } + } +} diff --git a/sdk/dotnet/Logs/Outputs/TransformerTypeConverterEntry.cs b/sdk/dotnet/Logs/Outputs/TransformerTypeConverterEntry.cs new file mode 100644 index 0000000000..3ce74e0263 --- /dev/null +++ b/sdk/dotnet/Logs/Outputs/TransformerTypeConverterEntry.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.Logs.Outputs +{ + + [OutputType] + public sealed class TransformerTypeConverterEntry + { + public readonly string Key; + public readonly Pulumi.AwsNative.Logs.TransformerTypeConverterEntryType Type; + + [OutputConstructor] + private TransformerTypeConverterEntry( + string key, + + Pulumi.AwsNative.Logs.TransformerTypeConverterEntryType type) + { + Key = key; + Type = type; + } + } +} diff --git a/sdk/dotnet/Logs/QueryDefinition.cs b/sdk/dotnet/Logs/QueryDefinition.cs index 91edca5fe0..d19cd9e736 100644 --- a/sdk/dotnet/Logs/QueryDefinition.cs +++ b/sdk/dotnet/Logs/QueryDefinition.cs @@ -33,6 +33,12 @@ public partial class QueryDefinition : global::Pulumi.CustomResource [Output("queryDefinitionId")] public Output QueryDefinitionId { get; private set; } = null!; + /// + /// Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + /// + [Output("queryLanguage")] + public Output QueryLanguage { get; private set; } = null!; + /// /// The query string to use for this definition /// @@ -102,6 +108,12 @@ public InputList LogGroupNames [Input("name")] public Input? Name { get; set; } + /// + /// Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + /// + [Input("queryLanguage")] + public Input? QueryLanguage { get; set; } + /// /// The query string to use for this definition /// diff --git a/sdk/dotnet/Logs/SubscriptionFilter.cs b/sdk/dotnet/Logs/SubscriptionFilter.cs index bd6bcd1582..608ef8b8f9 100644 --- a/sdk/dotnet/Logs/SubscriptionFilter.cs +++ b/sdk/dotnet/Logs/SubscriptionFilter.cs @@ -21,6 +21,14 @@ namespace Pulumi.AwsNative.Logs [AwsNativeResourceType("aws-native:logs:SubscriptionFilter")] public partial class SubscriptionFilter : global::Pulumi.CustomResource { + /// + /// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + /// + /// If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + /// + [Output("applyOnTransformedLogs")] + public Output ApplyOnTransformedLogs { get; private set; } = null!; + /// /// The Amazon Resource Name (ARN) of the destination. /// @@ -107,6 +115,14 @@ public static SubscriptionFilter Get(string name, Input id, CustomResour public sealed class SubscriptionFilterArgs : global::Pulumi.ResourceArgs { + /// + /// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + /// + /// If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + /// + [Input("applyOnTransformedLogs")] + public Input? ApplyOnTransformedLogs { get; set; } + /// /// The Amazon Resource Name (ARN) of the destination. /// diff --git a/sdk/dotnet/Logs/Transformer.cs b/sdk/dotnet/Logs/Transformer.cs new file mode 100644 index 0000000000..46817a80bb --- /dev/null +++ b/sdk/dotnet/Logs/Transformer.cs @@ -0,0 +1,102 @@ +// *** 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.Logs +{ + /// + /// Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + /// + [AwsNativeResourceType("aws-native:logs:Transformer")] + public partial class Transformer : global::Pulumi.CustomResource + { + /// + /// Existing log group that you want to associate with this transformer. + /// + [Output("logGroupIdentifier")] + public Output LogGroupIdentifier { get; private set; } = null!; + + /// + /// List of processors in a transformer + /// + [Output("transformerConfig")] + public Output> TransformerConfig { get; private set; } = null!; + + + /// + /// Create a Transformer 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 Transformer(string name, TransformerArgs args, CustomResourceOptions? options = null) + : base("aws-native:logs:Transformer", name, args ?? new TransformerArgs(), MakeResourceOptions(options, "")) + { + } + + private Transformer(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:logs:Transformer", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "logGroupIdentifier", + }, + }; + 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 Transformer 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 Transformer Get(string name, Input id, CustomResourceOptions? options = null) + { + return new Transformer(name, id, options); + } + } + + public sealed class TransformerArgs : global::Pulumi.ResourceArgs + { + /// + /// Existing log group that you want to associate with this transformer. + /// + [Input("logGroupIdentifier", required: true)] + public Input LogGroupIdentifier { get; set; } = null!; + + [Input("transformerConfig", required: true)] + private InputList? _transformerConfig; + + /// + /// List of processors in a transformer + /// + public InputList TransformerConfig + { + get => _transformerConfig ?? (_transformerConfig = new InputList()); + set => _transformerConfig = value; + } + + public TransformerArgs() + { + } + public static new TransformerArgs Empty => new TransformerArgs(); + } +} diff --git a/sdk/dotnet/M2/Enums.cs b/sdk/dotnet/M2/Enums.cs index 8809a523ff..0bf088f7df 100644 --- a/sdk/dotnet/M2/Enums.cs +++ b/sdk/dotnet/M2/Enums.cs @@ -65,4 +65,32 @@ private EnvironmentEngineType(string value) public override string ToString() => _value; } + + [EnumType] + public readonly struct EnvironmentNetworkType : IEquatable + { + private readonly string _value; + + private EnvironmentNetworkType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static EnvironmentNetworkType Ipv4 { get; } = new EnvironmentNetworkType("ipv4"); + public static EnvironmentNetworkType Dual { get; } = new EnvironmentNetworkType("dual"); + + public static bool operator ==(EnvironmentNetworkType left, EnvironmentNetworkType right) => left.Equals(right); + public static bool operator !=(EnvironmentNetworkType left, EnvironmentNetworkType right) => !left.Equals(right); + + public static explicit operator string(EnvironmentNetworkType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is EnvironmentNetworkType other && Equals(other); + public bool Equals(EnvironmentNetworkType 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/M2/Environment.cs b/sdk/dotnet/M2/Environment.cs index 444414ffd9..dad634c8d4 100644 --- a/sdk/dotnet/M2/Environment.cs +++ b/sdk/dotnet/M2/Environment.cs @@ -69,6 +69,9 @@ public partial class Environment : global::Pulumi.CustomResource [Output("name")] public Output Name { get; private set; } = null!; + [Output("networkType")] + public Output NetworkType { get; private set; } = null!; + /// /// Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. /// @@ -134,6 +137,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? "engineType", "kmsKeyId", "name", + "networkType", "publiclyAccessible", "securityGroupIds[*]", "storageConfigurations[*]", @@ -203,6 +207,9 @@ public sealed class EnvironmentArgs : global::Pulumi.ResourceArgs [Input("name")] public Input? Name { get; set; } + [Input("networkType")] + public Input? NetworkType { get; set; } + /// /// Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. /// diff --git a/sdk/dotnet/Msk/Replicator.cs b/sdk/dotnet/Msk/Replicator.cs index 606d7b4a08..1d0c866ead 100644 --- a/sdk/dotnet/Msk/Replicator.cs +++ b/sdk/dotnet/Msk/Replicator.cs @@ -90,6 +90,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? { "description", "kafkaClusters[*]", + "replicationInfoList[*].sourceKafkaClusterArn", + "replicationInfoList[*].targetCompressionType", + "replicationInfoList[*].targetKafkaClusterArn", + "replicationInfoList[*].topicReplication.startingPosition", + "replicationInfoList[*].topicReplication.topicNameConfiguration", "replicatorName", "serviceExecutionRoleArn", }, diff --git a/sdk/dotnet/NetworkManager/DirectConnectGatewayAttachment.cs b/sdk/dotnet/NetworkManager/DirectConnectGatewayAttachment.cs new file mode 100644 index 0000000000..064ac262e9 --- /dev/null +++ b/sdk/dotnet/NetworkManager/DirectConnectGatewayAttachment.cs @@ -0,0 +1,223 @@ +// *** 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.NetworkManager +{ + /// + /// AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + /// + [AwsNativeResourceType("aws-native:networkmanager:DirectConnectGatewayAttachment")] + public partial class DirectConnectGatewayAttachment : global::Pulumi.CustomResource + { + /// + /// Id of the attachment. + /// + [Output("attachmentId")] + public Output AttachmentId { get; private set; } = null!; + + /// + /// The policy rule number associated with the attachment. + /// + [Output("attachmentPolicyRuleNumber")] + public Output AttachmentPolicyRuleNumber { get; private set; } = null!; + + /// + /// Attachment type. + /// + [Output("attachmentType")] + public Output AttachmentType { get; private set; } = null!; + + /// + /// The ARN of a core network for the Direct Connect Gateway attachment. + /// + [Output("coreNetworkArn")] + public Output CoreNetworkArn { get; private set; } = null!; + + /// + /// The ID of a core network for the Direct Connect Gateway attachment. + /// + [Output("coreNetworkId")] + public Output CoreNetworkId { get; private set; } = null!; + + /// + /// Creation time of the attachment. + /// + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + /// + /// The ARN of the Direct Connect Gateway. + /// + [Output("directConnectGatewayArn")] + public Output DirectConnectGatewayArn { get; private set; } = null!; + + /// + /// The Regions where the edges are located. + /// + [Output("edgeLocations")] + public Output> EdgeLocations { get; private set; } = null!; + + /// + /// The name of the network function group attachment. + /// + [Output("networkFunctionGroupName")] + public Output NetworkFunctionGroupName { get; private set; } = null!; + + /// + /// Owner account of the attachment. + /// + [Output("ownerAccountId")] + public Output OwnerAccountId { get; private set; } = null!; + + /// + /// The attachment to move from one network function group to another. + /// + [Output("proposedNetworkFunctionGroupChange")] + public Output ProposedNetworkFunctionGroupChange { get; private set; } = null!; + + /// + /// The attachment to move from one segment to another. + /// + [Output("proposedSegmentChange")] + public Output ProposedSegmentChange { get; private set; } = null!; + + /// + /// The ARN of the Resource. + /// + [Output("resourceArn")] + public Output ResourceArn { get; private set; } = null!; + + /// + /// The name of the segment attachment.. + /// + [Output("segmentName")] + public Output SegmentName { get; private set; } = null!; + + /// + /// State of the attachment. + /// + [Output("state")] + public Output State { get; private set; } = null!; + + /// + /// Tags for the attachment. + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + /// + /// Last update time of the attachment. + /// + [Output("updatedAt")] + public Output UpdatedAt { get; private set; } = null!; + + + /// + /// Create a DirectConnectGatewayAttachment 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 DirectConnectGatewayAttachment(string name, DirectConnectGatewayAttachmentArgs args, CustomResourceOptions? options = null) + : base("aws-native:networkmanager:DirectConnectGatewayAttachment", name, args ?? new DirectConnectGatewayAttachmentArgs(), MakeResourceOptions(options, "")) + { + } + + private DirectConnectGatewayAttachment(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:networkmanager:DirectConnectGatewayAttachment", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "coreNetworkId", + "directConnectGatewayArn", + }, + }; + 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 DirectConnectGatewayAttachment 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 DirectConnectGatewayAttachment Get(string name, Input id, CustomResourceOptions? options = null) + { + return new DirectConnectGatewayAttachment(name, id, options); + } + } + + public sealed class DirectConnectGatewayAttachmentArgs : global::Pulumi.ResourceArgs + { + /// + /// The ID of a core network for the Direct Connect Gateway attachment. + /// + [Input("coreNetworkId", required: true)] + public Input CoreNetworkId { get; set; } = null!; + + /// + /// The ARN of the Direct Connect Gateway. + /// + [Input("directConnectGatewayArn", required: true)] + public Input DirectConnectGatewayArn { get; set; } = null!; + + [Input("edgeLocations", required: true)] + private InputList? _edgeLocations; + + /// + /// The Regions where the edges are located. + /// + public InputList EdgeLocations + { + get => _edgeLocations ?? (_edgeLocations = new InputList()); + set => _edgeLocations = value; + } + + /// + /// The attachment to move from one network function group to another. + /// + [Input("proposedNetworkFunctionGroupChange")] + public Input? ProposedNetworkFunctionGroupChange { get; set; } + + /// + /// The attachment to move from one segment to another. + /// + [Input("proposedSegmentChange")] + public Input? ProposedSegmentChange { get; set; } + + [Input("tags")] + private InputList? _tags; + + /// + /// Tags for the attachment. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public DirectConnectGatewayAttachmentArgs() + { + } + public static new DirectConnectGatewayAttachmentArgs Empty => new DirectConnectGatewayAttachmentArgs(); + } +} diff --git a/sdk/dotnet/NetworkManager/GetDirectConnectGatewayAttachment.cs b/sdk/dotnet/NetworkManager/GetDirectConnectGatewayAttachment.cs new file mode 100644 index 0000000000..0f68d55870 --- /dev/null +++ b/sdk/dotnet/NetworkManager/GetDirectConnectGatewayAttachment.cs @@ -0,0 +1,176 @@ +// *** 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.NetworkManager +{ + public static class GetDirectConnectGatewayAttachment + { + /// + /// AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + /// + public static Task InvokeAsync(GetDirectConnectGatewayAttachmentArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:networkmanager:getDirectConnectGatewayAttachment", args ?? new GetDirectConnectGatewayAttachmentArgs(), options.WithDefaults()); + + /// + /// AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + /// + public static Output Invoke(GetDirectConnectGatewayAttachmentInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:networkmanager:getDirectConnectGatewayAttachment", args ?? new GetDirectConnectGatewayAttachmentInvokeArgs(), options.WithDefaults()); + + /// + /// AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + /// + public static Output Invoke(GetDirectConnectGatewayAttachmentInvokeArgs args, InvokeOutputOptions options) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:networkmanager:getDirectConnectGatewayAttachment", args ?? new GetDirectConnectGatewayAttachmentInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetDirectConnectGatewayAttachmentArgs : global::Pulumi.InvokeArgs + { + /// + /// Id of the attachment. + /// + [Input("attachmentId", required: true)] + public string AttachmentId { get; set; } = null!; + + public GetDirectConnectGatewayAttachmentArgs() + { + } + public static new GetDirectConnectGatewayAttachmentArgs Empty => new GetDirectConnectGatewayAttachmentArgs(); + } + + public sealed class GetDirectConnectGatewayAttachmentInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Id of the attachment. + /// + [Input("attachmentId", required: true)] + public Input AttachmentId { get; set; } = null!; + + public GetDirectConnectGatewayAttachmentInvokeArgs() + { + } + public static new GetDirectConnectGatewayAttachmentInvokeArgs Empty => new GetDirectConnectGatewayAttachmentInvokeArgs(); + } + + + [OutputType] + public sealed class GetDirectConnectGatewayAttachmentResult + { + /// + /// Id of the attachment. + /// + public readonly string? AttachmentId; + /// + /// The policy rule number associated with the attachment. + /// + public readonly int? AttachmentPolicyRuleNumber; + /// + /// Attachment type. + /// + public readonly string? AttachmentType; + /// + /// The ARN of a core network for the Direct Connect Gateway attachment. + /// + public readonly string? CoreNetworkArn; + /// + /// Creation time of the attachment. + /// + public readonly string? CreatedAt; + /// + /// The Regions where the edges are located. + /// + public readonly ImmutableArray EdgeLocations; + /// + /// The name of the network function group attachment. + /// + public readonly string? NetworkFunctionGroupName; + /// + /// Owner account of the attachment. + /// + public readonly string? OwnerAccountId; + /// + /// The attachment to move from one network function group to another. + /// + public readonly Outputs.DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange? ProposedNetworkFunctionGroupChange; + /// + /// The attachment to move from one segment to another. + /// + public readonly Outputs.DirectConnectGatewayAttachmentProposedSegmentChange? ProposedSegmentChange; + /// + /// The ARN of the Resource. + /// + public readonly string? ResourceArn; + /// + /// The name of the segment attachment.. + /// + public readonly string? SegmentName; + /// + /// State of the attachment. + /// + public readonly string? State; + /// + /// Tags for the attachment. + /// + public readonly ImmutableArray Tags; + /// + /// Last update time of the attachment. + /// + public readonly string? UpdatedAt; + + [OutputConstructor] + private GetDirectConnectGatewayAttachmentResult( + string? attachmentId, + + int? attachmentPolicyRuleNumber, + + string? attachmentType, + + string? coreNetworkArn, + + string? createdAt, + + ImmutableArray edgeLocations, + + string? networkFunctionGroupName, + + string? ownerAccountId, + + Outputs.DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange? proposedNetworkFunctionGroupChange, + + Outputs.DirectConnectGatewayAttachmentProposedSegmentChange? proposedSegmentChange, + + string? resourceArn, + + string? segmentName, + + string? state, + + ImmutableArray tags, + + string? updatedAt) + { + AttachmentId = attachmentId; + AttachmentPolicyRuleNumber = attachmentPolicyRuleNumber; + AttachmentType = attachmentType; + CoreNetworkArn = coreNetworkArn; + CreatedAt = createdAt; + EdgeLocations = edgeLocations; + NetworkFunctionGroupName = networkFunctionGroupName; + OwnerAccountId = ownerAccountId; + ProposedNetworkFunctionGroupChange = proposedNetworkFunctionGroupChange; + ProposedSegmentChange = proposedSegmentChange; + ResourceArn = resourceArn; + SegmentName = segmentName; + State = state; + Tags = tags; + UpdatedAt = updatedAt; + } + } +} diff --git a/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs.cs b/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs.cs new file mode 100644 index 0000000000..b56178fe3e --- /dev/null +++ b/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs.cs @@ -0,0 +1,47 @@ +// *** 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.NetworkManager.Inputs +{ + + /// + /// The attachment to move from one network function group to another. + /// + public sealed class DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs : global::Pulumi.ResourceArgs + { + /// + /// The rule number in the policy document that applies to this change. + /// + [Input("attachmentPolicyRuleNumber")] + public Input? AttachmentPolicyRuleNumber { get; set; } + + /// + /// The name of the network function group to change. + /// + [Input("networkFunctionGroupName")] + public Input? NetworkFunctionGroupName { get; set; } + + [Input("tags")] + private InputList? _tags; + + /// + /// The key-value tags that changed for the network function group. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs() + { + } + public static new DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs Empty => new DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs(); + } +} diff --git a/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentProposedSegmentChangeArgs.cs b/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentProposedSegmentChangeArgs.cs new file mode 100644 index 0000000000..0290106d36 --- /dev/null +++ b/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentProposedSegmentChangeArgs.cs @@ -0,0 +1,47 @@ +// *** 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.NetworkManager.Inputs +{ + + /// + /// The attachment to move from one segment to another. + /// + public sealed class DirectConnectGatewayAttachmentProposedSegmentChangeArgs : global::Pulumi.ResourceArgs + { + /// + /// The rule number in the policy document that applies to this change. + /// + [Input("attachmentPolicyRuleNumber")] + public Input? AttachmentPolicyRuleNumber { get; set; } + + /// + /// The name of the segment to change. + /// + [Input("segmentName")] + public Input? SegmentName { get; set; } + + [Input("tags")] + private InputList? _tags; + + /// + /// The key-value tags that changed for the segment. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public DirectConnectGatewayAttachmentProposedSegmentChangeArgs() + { + } + public static new DirectConnectGatewayAttachmentProposedSegmentChangeArgs Empty => new DirectConnectGatewayAttachmentProposedSegmentChangeArgs(); + } +} diff --git a/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentTagArgs.cs b/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentTagArgs.cs new file mode 100644 index 0000000000..ecd0ecd6b9 --- /dev/null +++ b/sdk/dotnet/NetworkManager/Inputs/DirectConnectGatewayAttachmentTagArgs.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.NetworkManager.Inputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + public sealed class DirectConnectGatewayAttachmentTagArgs : global::Pulumi.ResourceArgs + { + /// + /// 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 -. + /// + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + /// + /// 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 -. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectConnectGatewayAttachmentTagArgs() + { + } + public static new DirectConnectGatewayAttachmentTagArgs Empty => new DirectConnectGatewayAttachmentTagArgs(); + } +} diff --git a/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange.cs b/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange.cs new file mode 100644 index 0000000000..40d201996f --- /dev/null +++ b/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange.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.NetworkManager.Outputs +{ + + /// + /// The attachment to move from one network function group to another. + /// + [OutputType] + public sealed class DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange + { + /// + /// The rule number in the policy document that applies to this change. + /// + public readonly int? AttachmentPolicyRuleNumber; + /// + /// The name of the network function group to change. + /// + public readonly string? NetworkFunctionGroupName; + /// + /// The key-value tags that changed for the network function group. + /// + public readonly ImmutableArray Tags; + + [OutputConstructor] + private DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange( + int? attachmentPolicyRuleNumber, + + string? networkFunctionGroupName, + + ImmutableArray tags) + { + AttachmentPolicyRuleNumber = attachmentPolicyRuleNumber; + NetworkFunctionGroupName = networkFunctionGroupName; + Tags = tags; + } + } +} diff --git a/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentProposedSegmentChange.cs b/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentProposedSegmentChange.cs new file mode 100644 index 0000000000..2d6eac7ddd --- /dev/null +++ b/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentProposedSegmentChange.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.NetworkManager.Outputs +{ + + /// + /// The attachment to move from one segment to another. + /// + [OutputType] + public sealed class DirectConnectGatewayAttachmentProposedSegmentChange + { + /// + /// The rule number in the policy document that applies to this change. + /// + public readonly int? AttachmentPolicyRuleNumber; + /// + /// The name of the segment to change. + /// + public readonly string? SegmentName; + /// + /// The key-value tags that changed for the segment. + /// + public readonly ImmutableArray Tags; + + [OutputConstructor] + private DirectConnectGatewayAttachmentProposedSegmentChange( + int? attachmentPolicyRuleNumber, + + string? segmentName, + + ImmutableArray tags) + { + AttachmentPolicyRuleNumber = attachmentPolicyRuleNumber; + SegmentName = segmentName; + Tags = tags; + } + } +} diff --git a/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentTag.cs b/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentTag.cs new file mode 100644 index 0000000000..d16e93e594 --- /dev/null +++ b/sdk/dotnet/NetworkManager/Outputs/DirectConnectGatewayAttachmentTag.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.NetworkManager.Outputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + [OutputType] + public sealed class DirectConnectGatewayAttachmentTag + { + /// + /// 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 -. + /// + public readonly string Key; + /// + /// 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 -. + /// + public readonly string Value; + + [OutputConstructor] + private DirectConnectGatewayAttachmentTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/Pipes/Inputs/PipeSageMakerPipelineParameterArgs.cs b/sdk/dotnet/Pipes/Inputs/PipeSageMakerPipelineParameterArgs.cs index a3c4a1c691..19463ec48b 100644 --- a/sdk/dotnet/Pipes/Inputs/PipeSageMakerPipelineParameterArgs.cs +++ b/sdk/dotnet/Pipes/Inputs/PipeSageMakerPipelineParameterArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.AwsNative.Pipes.Inputs public sealed class PipeSageMakerPipelineParameterArgs : global::Pulumi.ResourceArgs { /// - /// Name of parameter to start execution of a SageMaker Model Building Pipeline. + /// Name of parameter to start execution of a SageMaker AI Model Building Pipeline. /// [Input("name", required: true)] public Input Name { get; set; } = null!; /// - /// Value of parameter to start execution of a SageMaker Model Building Pipeline. + /// Value of parameter to start execution of a SageMaker AI Model Building Pipeline. /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Pipes/Inputs/PipeTargetParametersArgs.cs b/sdk/dotnet/Pipes/Inputs/PipeTargetParametersArgs.cs index a3b9c0ef23..21573bcd71 100644 --- a/sdk/dotnet/Pipes/Inputs/PipeTargetParametersArgs.cs +++ b/sdk/dotnet/Pipes/Inputs/PipeTargetParametersArgs.cs @@ -69,7 +69,7 @@ public sealed class PipeTargetParametersArgs : global::Pulumi.ResourceArgs public Input? RedshiftDataParameters { get; set; } /// - /// The parameters for using a SageMaker pipeline as a target. + /// The parameters for using a SageMaker AI pipeline as a target. /// [Input("sageMakerPipelineParameters")] public Input? SageMakerPipelineParameters { get; set; } diff --git a/sdk/dotnet/Pipes/Inputs/PipeTargetSageMakerPipelineParametersArgs.cs b/sdk/dotnet/Pipes/Inputs/PipeTargetSageMakerPipelineParametersArgs.cs index 25b7213ed3..3f34dc9d95 100644 --- a/sdk/dotnet/Pipes/Inputs/PipeTargetSageMakerPipelineParametersArgs.cs +++ b/sdk/dotnet/Pipes/Inputs/PipeTargetSageMakerPipelineParametersArgs.cs @@ -16,7 +16,7 @@ public sealed class PipeTargetSageMakerPipelineParametersArgs : global::Pulumi.R private InputList? _pipelineParameterList; /// - /// List of Parameter names and values for SageMaker Model Building Pipeline execution. + /// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. /// public InputList PipelineParameterList { diff --git a/sdk/dotnet/Pipes/Outputs/PipeSageMakerPipelineParameter.cs b/sdk/dotnet/Pipes/Outputs/PipeSageMakerPipelineParameter.cs index cbc24a997f..033e823596 100644 --- a/sdk/dotnet/Pipes/Outputs/PipeSageMakerPipelineParameter.cs +++ b/sdk/dotnet/Pipes/Outputs/PipeSageMakerPipelineParameter.cs @@ -14,11 +14,11 @@ namespace Pulumi.AwsNative.Pipes.Outputs public sealed class PipeSageMakerPipelineParameter { /// - /// Name of parameter to start execution of a SageMaker Model Building Pipeline. + /// Name of parameter to start execution of a SageMaker AI Model Building Pipeline. /// public readonly string Name; /// - /// Value of parameter to start execution of a SageMaker Model Building Pipeline. + /// Value of parameter to start execution of a SageMaker AI Model Building Pipeline. /// public readonly string Value; diff --git a/sdk/dotnet/Pipes/Outputs/PipeTargetParameters.cs b/sdk/dotnet/Pipes/Outputs/PipeTargetParameters.cs index 1eceec92a6..33c5066c90 100644 --- a/sdk/dotnet/Pipes/Outputs/PipeTargetParameters.cs +++ b/sdk/dotnet/Pipes/Outputs/PipeTargetParameters.cs @@ -52,7 +52,7 @@ public sealed class PipeTargetParameters /// public readonly Outputs.PipeTargetRedshiftDataParameters? RedshiftDataParameters; /// - /// The parameters for using a SageMaker pipeline as a target. + /// The parameters for using a SageMaker AI pipeline as a target. /// public readonly Outputs.PipeTargetSageMakerPipelineParameters? SageMakerPipelineParameters; /// diff --git a/sdk/dotnet/Pipes/Outputs/PipeTargetSageMakerPipelineParameters.cs b/sdk/dotnet/Pipes/Outputs/PipeTargetSageMakerPipelineParameters.cs index 9b419bd38c..2862888c05 100644 --- a/sdk/dotnet/Pipes/Outputs/PipeTargetSageMakerPipelineParameters.cs +++ b/sdk/dotnet/Pipes/Outputs/PipeTargetSageMakerPipelineParameters.cs @@ -14,7 +14,7 @@ namespace Pulumi.AwsNative.Pipes.Outputs public sealed class PipeTargetSageMakerPipelineParameters { /// - /// List of Parameter names and values for SageMaker Model Building Pipeline execution. + /// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. /// public readonly ImmutableArray PipelineParameterList; diff --git a/sdk/dotnet/QBusiness/Application.cs b/sdk/dotnet/QBusiness/Application.cs index 19bfecd3ad..acc5740476 100644 --- a/sdk/dotnet/QBusiness/Application.cs +++ b/sdk/dotnet/QBusiness/Application.cs @@ -107,6 +107,9 @@ public partial class Application : global::Pulumi.CustomResource [Output("qAppsConfiguration")] public Output QAppsConfiguration { get; private set; } = null!; + /// + /// The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. + /// [Output("quickSightConfiguration")] public Output QuickSightConfiguration { get; private set; } = null!; @@ -261,6 +264,9 @@ public InputList ClientIdsForOidc [Input("qAppsConfiguration")] public Input? QAppsConfiguration { get; set; } + /// + /// The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. + /// [Input("quickSightConfiguration")] public Input? QuickSightConfiguration { get; set; } diff --git a/sdk/dotnet/QBusiness/DataAccessor.cs b/sdk/dotnet/QBusiness/DataAccessor.cs index 52c0d8b9b5..b3d3e7cdbf 100644 --- a/sdk/dotnet/QBusiness/DataAccessor.cs +++ b/sdk/dotnet/QBusiness/DataAccessor.cs @@ -15,33 +15,63 @@ namespace Pulumi.AwsNative.QBusiness [AwsNativeResourceType("aws-native:qbusiness:DataAccessor")] public partial class DataAccessor : global::Pulumi.CustomResource { + /// + /// A list of action configurations specifying the allowed actions and any associated filters. + /// [Output("actionConfigurations")] public Output> ActionConfigurations { get; private set; } = null!; + /// + /// The unique identifier of the Amazon Q Business application. + /// [Output("applicationId")] public Output ApplicationId { get; private set; } = null!; + /// + /// The timestamp when the data accessor was created. + /// [Output("createdAt")] public Output CreatedAt { get; private set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the data accessor. + /// [Output("dataAccessorArn")] public Output DataAccessorArn { get; private set; } = null!; + /// + /// The unique identifier of the data accessor. + /// [Output("dataAccessorId")] public Output DataAccessorId { get; private set; } = null!; + /// + /// The friendly name of the data accessor. + /// [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + /// [Output("idcApplicationArn")] public Output IdcApplicationArn { get; private set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + /// [Output("principal")] public Output Principal { get; private set; } = null!; + /// + /// The tags to associate with the data accessor. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; + /// + /// The timestamp when the data accessor was last updated. + /// [Output("updatedAt")] public Output UpdatedAt { get; private set; } = null!; @@ -97,23 +127,40 @@ public sealed class DataAccessorArgs : global::Pulumi.ResourceArgs { [Input("actionConfigurations", required: true)] private InputList? _actionConfigurations; + + /// + /// A list of action configurations specifying the allowed actions and any associated filters. + /// public InputList ActionConfigurations { get => _actionConfigurations ?? (_actionConfigurations = new InputList()); set => _actionConfigurations = value; } + /// + /// The unique identifier of the Amazon Q Business application. + /// [Input("applicationId")] public Input? ApplicationId { get; set; } + /// + /// The friendly name of the data accessor. + /// [Input("displayName", required: true)] public Input DisplayName { get; set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + /// [Input("principal", required: true)] public Input Principal { get; set; } = null!; [Input("tags")] private InputList? _tags; + + /// + /// The tags to associate with the data accessor. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/QBusiness/DataSource.cs b/sdk/dotnet/QBusiness/DataSource.cs index 74566b4ffe..2995fbc3a1 100644 --- a/sdk/dotnet/QBusiness/DataSource.cs +++ b/sdk/dotnet/QBusiness/DataSource.cs @@ -83,6 +83,9 @@ public partial class DataSource : global::Pulumi.CustomResource [Output("indexId")] public Output IndexId { get; private set; } = null!; + /// + /// The configuration for extracting information from media in documents. + /// [Output("mediaExtractionConfiguration")] public Output MediaExtractionConfiguration { get; private set; } = null!; @@ -230,6 +233,9 @@ public sealed class DataSourceArgs : global::Pulumi.ResourceArgs [Input("indexId", required: true)] public Input IndexId { get; set; } = null!; + /// + /// The configuration for extracting information from media in documents. + /// [Input("mediaExtractionConfiguration")] public Input? MediaExtractionConfiguration { get; set; } diff --git a/sdk/dotnet/QBusiness/GetDataAccessor.cs b/sdk/dotnet/QBusiness/GetDataAccessor.cs index 13a623769f..fa0818df38 100644 --- a/sdk/dotnet/QBusiness/GetDataAccessor.cs +++ b/sdk/dotnet/QBusiness/GetDataAccessor.cs @@ -33,9 +33,15 @@ public static Output Invoke(GetDataAccessorInvokeArgs arg public sealed class GetDataAccessorArgs : global::Pulumi.InvokeArgs { + /// + /// The unique identifier of the Amazon Q Business application. + /// [Input("applicationId", required: true)] public string ApplicationId { get; set; } = null!; + /// + /// The unique identifier of the data accessor. + /// [Input("dataAccessorId", required: true)] public string DataAccessorId { get; set; } = null!; @@ -47,9 +53,15 @@ public GetDataAccessorArgs() public sealed class GetDataAccessorInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The unique identifier of the Amazon Q Business application. + /// [Input("applicationId", required: true)] public Input ApplicationId { get; set; } = null!; + /// + /// The unique identifier of the data accessor. + /// [Input("dataAccessorId", required: true)] public Input DataAccessorId { get; set; } = null!; @@ -63,13 +75,37 @@ public GetDataAccessorInvokeArgs() [OutputType] public sealed class GetDataAccessorResult { + /// + /// A list of action configurations specifying the allowed actions and any associated filters. + /// public readonly ImmutableArray ActionConfigurations; + /// + /// The timestamp when the data accessor was created. + /// public readonly string? CreatedAt; + /// + /// The Amazon Resource Name (ARN) of the data accessor. + /// public readonly string? DataAccessorArn; + /// + /// The unique identifier of the data accessor. + /// public readonly string? DataAccessorId; + /// + /// The friendly name of the data accessor. + /// public readonly string? DisplayName; + /// + /// The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + /// public readonly string? IdcApplicationArn; + /// + /// The tags to associate with the data accessor. + /// public readonly ImmutableArray Tags; + /// + /// The timestamp when the data accessor was last updated. + /// public readonly string? UpdatedAt; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/GetDataSource.cs b/sdk/dotnet/QBusiness/GetDataSource.cs index eb0ebb9590..87869f046e 100644 --- a/sdk/dotnet/QBusiness/GetDataSource.cs +++ b/sdk/dotnet/QBusiness/GetDataSource.cs @@ -129,6 +129,9 @@ public sealed class GetDataSourceResult /// For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . /// public readonly Outputs.DataSourceDocumentEnrichmentConfiguration? DocumentEnrichmentConfiguration; + /// + /// The configuration for extracting information from media in documents. + /// public readonly Outputs.DataSourceMediaExtractionConfiguration? MediaExtractionConfiguration; /// /// The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. diff --git a/sdk/dotnet/QBusiness/GetWebExperience.cs b/sdk/dotnet/QBusiness/GetWebExperience.cs index 1197924776..8468d0f4d2 100644 --- a/sdk/dotnet/QBusiness/GetWebExperience.cs +++ b/sdk/dotnet/QBusiness/GetWebExperience.cs @@ -79,6 +79,9 @@ public sealed class GetWebExperienceResult /// The Unix timestamp when the Amazon Q Business application was last updated. /// public readonly string? CreatedAt; + /// + /// Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + /// public readonly Outputs.WebExperienceCustomizationConfiguration? CustomizationConfiguration; /// /// The endpoint URLs for your Amazon Q Business web experience. The URLs are unique and fully hosted by AWS . diff --git a/sdk/dotnet/QBusiness/Inputs/ApplicationQuickSightConfigurationArgs.cs b/sdk/dotnet/QBusiness/Inputs/ApplicationQuickSightConfigurationArgs.cs index 496680b389..78ddb6f57d 100644 --- a/sdk/dotnet/QBusiness/Inputs/ApplicationQuickSightConfigurationArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/ApplicationQuickSightConfigurationArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.AwsNative.QBusiness.Inputs public sealed class ApplicationQuickSightConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + /// [Input("clientNamespace", required: true)] public Input ClientNamespace { get; set; } = null!; diff --git a/sdk/dotnet/QBusiness/Inputs/DataAccessorActionConfigurationArgs.cs b/sdk/dotnet/QBusiness/Inputs/DataAccessorActionConfigurationArgs.cs index f8c0797626..61fe284195 100644 --- a/sdk/dotnet/QBusiness/Inputs/DataAccessorActionConfigurationArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/DataAccessorActionConfigurationArgs.cs @@ -12,9 +12,15 @@ namespace Pulumi.AwsNative.QBusiness.Inputs public sealed class DataAccessorActionConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// The Amazon Q Business action that is allowed. + /// [Input("action", required: true)] public Input Action { get; set; } = null!; + /// + /// The filter configuration for the action, if any. + /// [Input("filterConfiguration")] public Input? FilterConfiguration { get; set; } diff --git a/sdk/dotnet/QBusiness/Inputs/DataAccessorActionFilterConfigurationArgs.cs b/sdk/dotnet/QBusiness/Inputs/DataAccessorActionFilterConfigurationArgs.cs index 1452741c33..c2ab2b0196 100644 --- a/sdk/dotnet/QBusiness/Inputs/DataAccessorActionFilterConfigurationArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/DataAccessorActionFilterConfigurationArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.AwsNative.QBusiness.Inputs public sealed class DataAccessorActionFilterConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// Enables filtering of responses based on document attributes or metadata fields. + /// [Input("documentAttributeFilter", required: true)] public Input DocumentAttributeFilter { get; set; } = null!; diff --git a/sdk/dotnet/QBusiness/Inputs/DataAccessorAttributeFilterArgs.cs b/sdk/dotnet/QBusiness/Inputs/DataAccessorAttributeFilterArgs.cs index 07ff54464f..487946a1c1 100644 --- a/sdk/dotnet/QBusiness/Inputs/DataAccessorAttributeFilterArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/DataAccessorAttributeFilterArgs.cs @@ -14,38 +14,70 @@ public sealed class DataAccessorAttributeFilterArgs : global::Pulumi.ResourceArg { [Input("andAllFilters")] private InputList? _andAllFilters; + + /// + /// Performs a logical `AND` operation on all supplied filters. + /// public InputList AndAllFilters { get => _andAllFilters ?? (_andAllFilters = new InputList()); set => _andAllFilters = value; } + /// + /// Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + /// [Input("containsAll")] public Input? ContainsAll { get; set; } + /// + /// Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + /// [Input("containsAny")] public Input? ContainsAny { get; set; } + /// + /// Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + /// [Input("equalsTo")] public Input? EqualsTo { get; set; } + /// + /// Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// [Input("greaterThan")] public Input? GreaterThan { get; set; } + /// + /// Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// [Input("greaterThanOrEquals")] public Input? GreaterThanOrEquals { get; set; } + /// + /// Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// [Input("lessThan")] public Input? LessThan { get; set; } + /// + /// Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// [Input("lessThanOrEquals")] public Input? LessThanOrEquals { get; set; } + /// + /// Performs a logical `NOT` operation on all supplied filters. + /// [Input("notFilter")] public Input? NotFilter { get; set; } [Input("orAllFilters")] private InputList? _orAllFilters; + + /// + /// Performs a logical `OR` operation on all supplied filters. + /// public InputList OrAllFilters { get => _orAllFilters ?? (_orAllFilters = new InputList()); diff --git a/sdk/dotnet/QBusiness/Inputs/DataAccessorDocumentAttributeArgs.cs b/sdk/dotnet/QBusiness/Inputs/DataAccessorDocumentAttributeArgs.cs index 300fba7d87..aa79bd2a06 100644 --- a/sdk/dotnet/QBusiness/Inputs/DataAccessorDocumentAttributeArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/DataAccessorDocumentAttributeArgs.cs @@ -12,9 +12,15 @@ namespace Pulumi.AwsNative.QBusiness.Inputs public sealed class DataAccessorDocumentAttributeArgs : global::Pulumi.ResourceArgs { + /// + /// The identifier for the attribute. + /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// The value of the attribute. + /// [Input("value", required: true)] public object Value { get; set; } = null!; diff --git a/sdk/dotnet/QBusiness/Inputs/DataSourceImageExtractionConfigurationArgs.cs b/sdk/dotnet/QBusiness/Inputs/DataSourceImageExtractionConfigurationArgs.cs index fb9e426478..3d1b4b2d88 100644 --- a/sdk/dotnet/QBusiness/Inputs/DataSourceImageExtractionConfigurationArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/DataSourceImageExtractionConfigurationArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.AwsNative.QBusiness.Inputs public sealed class DataSourceImageExtractionConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// Specify whether to extract semantic meaning from images and visuals from documents. + /// [Input("imageExtractionStatus", required: true)] public Input ImageExtractionStatus { get; set; } = null!; diff --git a/sdk/dotnet/QBusiness/Inputs/DataSourceMediaExtractionConfigurationArgs.cs b/sdk/dotnet/QBusiness/Inputs/DataSourceMediaExtractionConfigurationArgs.cs index 2ab6cf1dd1..30e730ae7a 100644 --- a/sdk/dotnet/QBusiness/Inputs/DataSourceMediaExtractionConfigurationArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/DataSourceMediaExtractionConfigurationArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.AwsNative.QBusiness.Inputs public sealed class DataSourceMediaExtractionConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + /// [Input("imageExtractionConfiguration")] public Input? ImageExtractionConfiguration { get; set; } diff --git a/sdk/dotnet/QBusiness/Inputs/WebExperienceCustomizationConfigurationArgs.cs b/sdk/dotnet/QBusiness/Inputs/WebExperienceCustomizationConfigurationArgs.cs index 30043de18c..9c738cb4c2 100644 --- a/sdk/dotnet/QBusiness/Inputs/WebExperienceCustomizationConfigurationArgs.cs +++ b/sdk/dotnet/QBusiness/Inputs/WebExperienceCustomizationConfigurationArgs.cs @@ -12,15 +12,27 @@ namespace Pulumi.AwsNative.QBusiness.Inputs public sealed class WebExperienceCustomizationConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + /// [Input("customCssUrl")] public Input? CustomCssUrl { get; set; } + /// + /// Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + /// [Input("faviconUrl")] public Input? FaviconUrl { get; set; } + /// + /// Provides the URL where the custom font file is hosted for an Amazon Q web experience. + /// [Input("fontUrl")] public Input? FontUrl { get; set; } + /// + /// Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + /// [Input("logoUrl")] public Input? LogoUrl { get; set; } diff --git a/sdk/dotnet/QBusiness/Outputs/ApplicationQuickSightConfiguration.cs b/sdk/dotnet/QBusiness/Outputs/ApplicationQuickSightConfiguration.cs index dc1fc9190b..f38dc52e58 100644 --- a/sdk/dotnet/QBusiness/Outputs/ApplicationQuickSightConfiguration.cs +++ b/sdk/dotnet/QBusiness/Outputs/ApplicationQuickSightConfiguration.cs @@ -13,6 +13,9 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class ApplicationQuickSightConfiguration { + /// + /// The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + /// public readonly string ClientNamespace; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Outputs/DataAccessorActionConfiguration.cs b/sdk/dotnet/QBusiness/Outputs/DataAccessorActionConfiguration.cs index 2a21025cf3..ace5310d0a 100644 --- a/sdk/dotnet/QBusiness/Outputs/DataAccessorActionConfiguration.cs +++ b/sdk/dotnet/QBusiness/Outputs/DataAccessorActionConfiguration.cs @@ -13,7 +13,13 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class DataAccessorActionConfiguration { + /// + /// The Amazon Q Business action that is allowed. + /// public readonly string Action; + /// + /// The filter configuration for the action, if any. + /// public readonly Outputs.DataAccessorActionFilterConfiguration? FilterConfiguration; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Outputs/DataAccessorActionFilterConfiguration.cs b/sdk/dotnet/QBusiness/Outputs/DataAccessorActionFilterConfiguration.cs index 2de0912206..dc0d34229a 100644 --- a/sdk/dotnet/QBusiness/Outputs/DataAccessorActionFilterConfiguration.cs +++ b/sdk/dotnet/QBusiness/Outputs/DataAccessorActionFilterConfiguration.cs @@ -13,6 +13,9 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class DataAccessorActionFilterConfiguration { + /// + /// Enables filtering of responses based on document attributes or metadata fields. + /// public readonly Outputs.DataAccessorAttributeFilter DocumentAttributeFilter; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Outputs/DataAccessorAttributeFilter.cs b/sdk/dotnet/QBusiness/Outputs/DataAccessorAttributeFilter.cs index 73ff52aa33..c63511a966 100644 --- a/sdk/dotnet/QBusiness/Outputs/DataAccessorAttributeFilter.cs +++ b/sdk/dotnet/QBusiness/Outputs/DataAccessorAttributeFilter.cs @@ -13,15 +13,45 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class DataAccessorAttributeFilter { + /// + /// Performs a logical `AND` operation on all supplied filters. + /// public readonly ImmutableArray AndAllFilters; + /// + /// Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + /// public readonly Outputs.DataAccessorDocumentAttribute? ContainsAll; + /// + /// Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + /// public readonly Outputs.DataAccessorDocumentAttribute? ContainsAny; + /// + /// Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + /// public readonly Outputs.DataAccessorDocumentAttribute? EqualsTo; + /// + /// Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// public readonly Outputs.DataAccessorDocumentAttribute? GreaterThan; + /// + /// Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// public readonly Outputs.DataAccessorDocumentAttribute? GreaterThanOrEquals; + /// + /// Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// public readonly Outputs.DataAccessorDocumentAttribute? LessThan; + /// + /// Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + /// public readonly Outputs.DataAccessorDocumentAttribute? LessThanOrEquals; + /// + /// Performs a logical `NOT` operation on all supplied filters. + /// public readonly Outputs.DataAccessorAttributeFilter? NotFilter; + /// + /// Performs a logical `OR` operation on all supplied filters. + /// public readonly ImmutableArray OrAllFilters; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Outputs/DataAccessorDocumentAttribute.cs b/sdk/dotnet/QBusiness/Outputs/DataAccessorDocumentAttribute.cs index 737519c92d..57edbe2a17 100644 --- a/sdk/dotnet/QBusiness/Outputs/DataAccessorDocumentAttribute.cs +++ b/sdk/dotnet/QBusiness/Outputs/DataAccessorDocumentAttribute.cs @@ -13,7 +13,13 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class DataAccessorDocumentAttribute { + /// + /// The identifier for the attribute. + /// public readonly string Name; + /// + /// The value of the attribute. + /// public readonly object Value; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Outputs/DataSourceImageExtractionConfiguration.cs b/sdk/dotnet/QBusiness/Outputs/DataSourceImageExtractionConfiguration.cs index 0b225e9066..02eb68329d 100644 --- a/sdk/dotnet/QBusiness/Outputs/DataSourceImageExtractionConfiguration.cs +++ b/sdk/dotnet/QBusiness/Outputs/DataSourceImageExtractionConfiguration.cs @@ -13,6 +13,9 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class DataSourceImageExtractionConfiguration { + /// + /// Specify whether to extract semantic meaning from images and visuals from documents. + /// public readonly Pulumi.AwsNative.QBusiness.DataSourceImageExtractionStatus ImageExtractionStatus; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Outputs/DataSourceMediaExtractionConfiguration.cs b/sdk/dotnet/QBusiness/Outputs/DataSourceMediaExtractionConfiguration.cs index 9309840405..4d2745e8a3 100644 --- a/sdk/dotnet/QBusiness/Outputs/DataSourceMediaExtractionConfiguration.cs +++ b/sdk/dotnet/QBusiness/Outputs/DataSourceMediaExtractionConfiguration.cs @@ -13,6 +13,9 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class DataSourceMediaExtractionConfiguration { + /// + /// The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + /// public readonly Outputs.DataSourceImageExtractionConfiguration? ImageExtractionConfiguration; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Outputs/WebExperienceCustomizationConfiguration.cs b/sdk/dotnet/QBusiness/Outputs/WebExperienceCustomizationConfiguration.cs index 1865d9cd91..e97e5e4d5e 100644 --- a/sdk/dotnet/QBusiness/Outputs/WebExperienceCustomizationConfiguration.cs +++ b/sdk/dotnet/QBusiness/Outputs/WebExperienceCustomizationConfiguration.cs @@ -13,9 +13,21 @@ namespace Pulumi.AwsNative.QBusiness.Outputs [OutputType] public sealed class WebExperienceCustomizationConfiguration { + /// + /// Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + /// public readonly string? CustomCssUrl; + /// + /// Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + /// public readonly string? FaviconUrl; + /// + /// Provides the URL where the custom font file is hosted for an Amazon Q web experience. + /// public readonly string? FontUrl; + /// + /// Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + /// public readonly string? LogoUrl; [OutputConstructor] diff --git a/sdk/dotnet/QBusiness/Permission.cs b/sdk/dotnet/QBusiness/Permission.cs index 0d4ab8f348..0f4adc54a1 100644 --- a/sdk/dotnet/QBusiness/Permission.cs +++ b/sdk/dotnet/QBusiness/Permission.cs @@ -15,15 +15,27 @@ namespace Pulumi.AwsNative.QBusiness [AwsNativeResourceType("aws-native:qbusiness:Permission")] public partial class Permission : global::Pulumi.CustomResource { + /// + /// The list of Amazon Q Business actions that the ISV is allowed to perform. + /// [Output("actions")] public Output> Actions { get; private set; } = null!; + /// + /// The unique identifier of the Amazon Q Business application. + /// [Output("applicationId")] public Output ApplicationId { get; private set; } = null!; + /// + /// Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + /// [Output("principal")] public Output Principal { get; private set; } = null!; + /// + /// A unique identifier for the policy statement. + /// [Output("statementId")] public Output StatementId { get; private set; } = null!; @@ -81,18 +93,31 @@ public sealed class PermissionArgs : global::Pulumi.ResourceArgs { [Input("actions", required: true)] private InputList? _actions; + + /// + /// The list of Amazon Q Business actions that the ISV is allowed to perform. + /// public InputList Actions { get => _actions ?? (_actions = new InputList()); set => _actions = value; } + /// + /// The unique identifier of the Amazon Q Business application. + /// [Input("applicationId", required: true)] public Input ApplicationId { get; set; } = null!; + /// + /// Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + /// [Input("principal", required: true)] public Input Principal { get; set; } = null!; + /// + /// A unique identifier for the policy statement. + /// [Input("statementId", required: true)] public Input StatementId { get; set; } = null!; diff --git a/sdk/dotnet/QBusiness/WebExperience.cs b/sdk/dotnet/QBusiness/WebExperience.cs index 5fd3f78a7c..83acf649e6 100644 --- a/sdk/dotnet/QBusiness/WebExperience.cs +++ b/sdk/dotnet/QBusiness/WebExperience.cs @@ -27,6 +27,9 @@ public partial class WebExperience : global::Pulumi.CustomResource [Output("createdAt")] public Output CreatedAt { get; private set; } = null!; + /// + /// Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + /// [Output("customizationConfiguration")] public Output CustomizationConfiguration { get; private set; } = null!; @@ -167,6 +170,9 @@ public sealed class WebExperienceArgs : global::Pulumi.ResourceArgs [Input("applicationId", required: true)] public Input ApplicationId { get; set; } = null!; + /// + /// Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + /// [Input("customizationConfiguration")] public Input? CustomizationConfiguration { get; set; } diff --git a/sdk/dotnet/QuickSight/DataSet.cs b/sdk/dotnet/QuickSight/DataSet.cs index 2da0fd5596..53de7d4639 100644 --- a/sdk/dotnet/QuickSight/DataSet.cs +++ b/sdk/dotnet/QuickSight/DataSet.cs @@ -127,6 +127,9 @@ public partial class DataSet : global::Pulumi.CustomResource [Output("outputColumns")] public Output> OutputColumns { get; private set; } = null!; + [Output("performanceConfiguration")] + public Output PerformanceConfiguration { get; private set; } = null!; + /// /// <p>A list of resource permissions on the dataset.</p> /// @@ -323,6 +326,9 @@ public InputMap LogicalTableMap [Input("name")] public Input? Name { get; set; } + [Input("performanceConfiguration")] + public Input? PerformanceConfiguration { get; set; } + [Input("permissions")] private InputList? _permissions; diff --git a/sdk/dotnet/QuickSight/GetDataSet.cs b/sdk/dotnet/QuickSight/GetDataSet.cs index f3dd77df63..70a73f735a 100644 --- a/sdk/dotnet/QuickSight/GetDataSet.cs +++ b/sdk/dotnet/QuickSight/GetDataSet.cs @@ -131,6 +131,7 @@ public sealed class GetDataSetResult /// analyses, and dashboards.</p> /// public readonly ImmutableArray OutputColumns; + public readonly Outputs.DataSetPerformanceConfiguration? PerformanceConfiguration; /// /// <p>A list of resource permissions on the dataset.</p> /// @@ -180,6 +181,8 @@ private GetDataSetResult( ImmutableArray outputColumns, + Outputs.DataSetPerformanceConfiguration? performanceConfiguration, + ImmutableArray permissions, ImmutableDictionary? physicalTableMap, @@ -203,6 +206,7 @@ private GetDataSetResult( LogicalTableMap = logicalTableMap; Name = name; OutputColumns = outputColumns; + PerformanceConfiguration = performanceConfiguration; Permissions = permissions; PhysicalTableMap = physicalTableMap; RowLevelPermissionDataSet = rowLevelPermissionDataSet; diff --git a/sdk/dotnet/QuickSight/Inputs/DataSetPerformanceConfigurationArgs.cs b/sdk/dotnet/QuickSight/Inputs/DataSetPerformanceConfigurationArgs.cs new file mode 100644 index 0000000000..0fcb2c32e3 --- /dev/null +++ b/sdk/dotnet/QuickSight/Inputs/DataSetPerformanceConfigurationArgs.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.QuickSight.Inputs +{ + + public sealed class DataSetPerformanceConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("uniqueKeys")] + private InputList? _uniqueKeys; + public InputList UniqueKeys + { + get => _uniqueKeys ?? (_uniqueKeys = new InputList()); + set => _uniqueKeys = value; + } + + public DataSetPerformanceConfigurationArgs() + { + } + public static new DataSetPerformanceConfigurationArgs Empty => new DataSetPerformanceConfigurationArgs(); + } +} diff --git a/sdk/dotnet/QuickSight/Inputs/DataSetUniqueKeyArgs.cs b/sdk/dotnet/QuickSight/Inputs/DataSetUniqueKeyArgs.cs new file mode 100644 index 0000000000..2df39be012 --- /dev/null +++ b/sdk/dotnet/QuickSight/Inputs/DataSetUniqueKeyArgs.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.QuickSight.Inputs +{ + + public sealed class DataSetUniqueKeyArgs : global::Pulumi.ResourceArgs + { + [Input("columnNames", required: true)] + private InputList? _columnNames; + public InputList ColumnNames + { + get => _columnNames ?? (_columnNames = new InputList()); + set => _columnNames = value; + } + + public DataSetUniqueKeyArgs() + { + } + public static new DataSetUniqueKeyArgs Empty => new DataSetUniqueKeyArgs(); + } +} diff --git a/sdk/dotnet/QuickSight/Outputs/DataSetPerformanceConfiguration.cs b/sdk/dotnet/QuickSight/Outputs/DataSetPerformanceConfiguration.cs new file mode 100644 index 0000000000..896bbded28 --- /dev/null +++ b/sdk/dotnet/QuickSight/Outputs/DataSetPerformanceConfiguration.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.QuickSight.Outputs +{ + + [OutputType] + public sealed class DataSetPerformanceConfiguration + { + public readonly ImmutableArray UniqueKeys; + + [OutputConstructor] + private DataSetPerformanceConfiguration(ImmutableArray uniqueKeys) + { + UniqueKeys = uniqueKeys; + } + } +} diff --git a/sdk/dotnet/QuickSight/Outputs/DataSetUniqueKey.cs b/sdk/dotnet/QuickSight/Outputs/DataSetUniqueKey.cs new file mode 100644 index 0000000000..ced2503032 --- /dev/null +++ b/sdk/dotnet/QuickSight/Outputs/DataSetUniqueKey.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.QuickSight.Outputs +{ + + [OutputType] + public sealed class DataSetUniqueKey + { + public readonly ImmutableArray ColumnNames; + + [OutputConstructor] + private DataSetUniqueKey(ImmutableArray columnNames) + { + ColumnNames = columnNames; + } + } +} diff --git a/sdk/dotnet/RedshiftServerless/Inputs/WorkgroupPerformanceTargetArgs.cs b/sdk/dotnet/RedshiftServerless/Inputs/WorkgroupPerformanceTargetArgs.cs index c5fb15ebad..cfd0971915 100644 --- a/sdk/dotnet/RedshiftServerless/Inputs/WorkgroupPerformanceTargetArgs.cs +++ b/sdk/dotnet/RedshiftServerless/Inputs/WorkgroupPerformanceTargetArgs.cs @@ -12,9 +12,15 @@ namespace Pulumi.AwsNative.RedshiftServerless.Inputs public sealed class WorkgroupPerformanceTargetArgs : global::Pulumi.ResourceArgs { + /// + /// The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + /// [Input("level")] public Input? Level { get; set; } + /// + /// Whether the price performance target is enabled for the workgroup. + /// [Input("status")] public Input? Status { get; set; } diff --git a/sdk/dotnet/RedshiftServerless/Outputs/Workgroup.cs b/sdk/dotnet/RedshiftServerless/Outputs/Workgroup.cs index 6a184ebe57..79f85cb230 100644 --- a/sdk/dotnet/RedshiftServerless/Outputs/Workgroup.cs +++ b/sdk/dotnet/RedshiftServerless/Outputs/Workgroup.cs @@ -41,6 +41,9 @@ public sealed class Workgroup /// The namespace the workgroup is associated with. /// public readonly string? NamespaceName; + /// + /// An object that represents the price performance target settings for the workgroup. + /// public readonly Outputs.WorkgroupPerformanceTarget? PricePerformanceTarget; /// /// A value that specifies whether the workgroup can be accessible from a public network. diff --git a/sdk/dotnet/RedshiftServerless/Outputs/WorkgroupPerformanceTarget.cs b/sdk/dotnet/RedshiftServerless/Outputs/WorkgroupPerformanceTarget.cs index 1fbcc6340c..ff8826a8ae 100644 --- a/sdk/dotnet/RedshiftServerless/Outputs/WorkgroupPerformanceTarget.cs +++ b/sdk/dotnet/RedshiftServerless/Outputs/WorkgroupPerformanceTarget.cs @@ -13,7 +13,13 @@ namespace Pulumi.AwsNative.RedshiftServerless.Outputs [OutputType] public sealed class WorkgroupPerformanceTarget { + /// + /// The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + /// public readonly int? Level; + /// + /// Whether the price performance target is enabled for the workgroup. + /// public readonly Pulumi.AwsNative.RedshiftServerless.WorkgroupPerformanceTargetStatus? Status; [OutputConstructor] diff --git a/sdk/dotnet/S3/Bucket.cs b/sdk/dotnet/S3/Bucket.cs index 1cbbfea36b..606224dcac 100644 --- a/sdk/dotnet/S3/Bucket.cs +++ b/sdk/dotnet/S3/Bucket.cs @@ -948,9 +948,6 @@ public partial class Bucket : global::Pulumi.CustomResource [Output("loggingConfiguration")] public Output LoggingConfiguration { get; private set; } = null!; - [Output("metadataTableConfiguration")] - public Output MetadataTableConfiguration { get; private set; } = null!; - /// /// Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). /// @@ -1166,9 +1163,6 @@ public InputList InventoryConfiguration [Input("loggingConfiguration")] public Input? LoggingConfiguration { get; set; } - [Input("metadataTableConfiguration")] - public Input? MetadataTableConfiguration { get; set; } - [Input("metricsConfigurations")] private InputList? _metricsConfigurations; diff --git a/sdk/dotnet/S3/GetBucket.cs b/sdk/dotnet/S3/GetBucket.cs index d6388091f6..ccd1c5cf78 100644 --- a/sdk/dotnet/S3/GetBucket.cs +++ b/sdk/dotnet/S3/GetBucket.cs @@ -123,7 +123,6 @@ public sealed class GetBucketResult /// Settings that define where logs are stored. /// public readonly Outputs.BucketLoggingConfiguration? LoggingConfiguration; - public readonly Outputs.BucketMetadataTableConfiguration? MetadataTableConfiguration; /// /// Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). /// @@ -209,8 +208,6 @@ private GetBucketResult( Outputs.BucketLoggingConfiguration? loggingConfiguration, - Outputs.BucketMetadataTableConfiguration? metadataTableConfiguration, - ImmutableArray metricsConfigurations, Outputs.BucketNotificationConfiguration? notificationConfiguration, @@ -246,7 +243,6 @@ private GetBucketResult( InventoryConfigurations = inventoryConfigurations; LifecycleConfiguration = lifecycleConfiguration; LoggingConfiguration = loggingConfiguration; - MetadataTableConfiguration = metadataTableConfiguration; MetricsConfigurations = metricsConfigurations; NotificationConfiguration = notificationConfiguration; ObjectLockConfiguration = objectLockConfiguration; diff --git a/sdk/dotnet/S3/Inputs/BucketMetadataTableConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketMetadataTableConfigurationArgs.cs deleted file mode 100644 index 352d2f8186..0000000000 --- a/sdk/dotnet/S3/Inputs/BucketMetadataTableConfigurationArgs.cs +++ /dev/null @@ -1,35 +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.S3.Inputs -{ - - public sealed class BucketMetadataTableConfigurationArgs : global::Pulumi.ResourceArgs - { - /// - /// Returns the <code>Error</code> value of the GetBucketMetadataTableConfiguration response. - /// - [Input("error")] - public Input? Error { get; set; } - - [Input("s3TablesDestination", required: true)] - public Input S3TablesDestination { get; set; } = null!; - - /// - /// Returns the <code>Status</code> value of the <code>GetBucketMetadataTableConfigurationResult</code> response. This value indicates the status of the metadata table. The status values are:<br/><code>CREATING</code> - The metadata table is in the process of being created in the specified table bucket.<br/><code>ACTIVE</code> - The metadata table has been created successfully and records are being delivered to the table.<br/><code>FAILED</code> - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - /// - [Input("status")] - public Input? Status { get; set; } - - public BucketMetadataTableConfigurationArgs() - { - } - public static new BucketMetadataTableConfigurationArgs Empty => new BucketMetadataTableConfigurationArgs(); - } -} diff --git a/sdk/dotnet/S3/Inputs/BucketMetadataTableErrorArgs.cs b/sdk/dotnet/S3/Inputs/BucketMetadataTableErrorArgs.cs deleted file mode 100644 index ccd338c169..0000000000 --- a/sdk/dotnet/S3/Inputs/BucketMetadataTableErrorArgs.cs +++ /dev/null @@ -1,32 +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.S3.Inputs -{ - - public sealed class BucketMetadataTableErrorArgs : global::Pulumi.ResourceArgs - { - /// - /// If the <code>CreateBucketMetadataTableConfiguration</code> request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:<br/><code>AccessDeniedCreatingResources</code> - You don't have sufficient permissions to create the required resources. Make sure that you have <code>s3tables:CreateNamespace</code>, <code>s3tables:CreateTable</code>, <code>s3tables:GetTable</code> and <code>s3tables:PutTablePolicy</code> permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>AccessDeniedWritingToTable</code> - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>DestinationTableNotFound</code> - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>ServerInternalError</code> - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableAlreadyExists</code> - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableBucketNotFound</code> - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - /// - [Input("errorCode", required: true)] - public Input ErrorCode { get; set; } = null!; - - /// - /// If the <code>CreateBucketMetadataTableConfiguration</code> request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:<br/><code>AccessDeniedCreatingResources</code> - You don't have sufficient permissions to create the required resources. Make sure that you have <code>s3tables:CreateNamespace</code>, <code>s3tables:CreateTable</code>, <code>s3tables:GetTable</code> and <code>s3tables:PutTablePolicy</code> permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>AccessDeniedWritingToTable</code> - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>DestinationTableNotFound</code> - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>ServerInternalError</code> - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableAlreadyExists</code> - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableBucketNotFound</code> - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - /// - [Input("errorMessage", required: true)] - public Input ErrorMessage { get; set; } = null!; - - public BucketMetadataTableErrorArgs() - { - } - public static new BucketMetadataTableErrorArgs Empty => new BucketMetadataTableErrorArgs(); - } -} diff --git a/sdk/dotnet/S3/Inputs/BucketS3TablesDestinationArgs.cs b/sdk/dotnet/S3/Inputs/BucketS3TablesDestinationArgs.cs deleted file mode 100644 index a40c005204..0000000000 --- a/sdk/dotnet/S3/Inputs/BucketS3TablesDestinationArgs.cs +++ /dev/null @@ -1,44 +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.S3.Inputs -{ - - public sealed class BucketS3TablesDestinationArgs : global::Pulumi.ResourceArgs - { - /// - /// The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket. - /// - [Input("tableArn")] - public Input? TableArn { get; set; } - - /// - /// The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - /// - [Input("tableBucketArn", required: true)] - public Input TableBucketArn { get; set; } = null!; - - /// - /// The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket. - /// - [Input("tableName", required: true)] - public Input TableName { get; set; } = null!; - - /// - /// The table bucket namespace for the metadata table in your metadata table configuration. This value is always <code>aws_s3_metadata</code>. - /// - [Input("tableNamespace")] - public Input? TableNamespace { get; set; } - - public BucketS3TablesDestinationArgs() - { - } - public static new BucketS3TablesDestinationArgs Empty => new BucketS3TablesDestinationArgs(); - } -} diff --git a/sdk/dotnet/S3/Outputs/BucketMetadataTableConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketMetadataTableConfiguration.cs deleted file mode 100644 index 933aadd41b..0000000000 --- a/sdk/dotnet/S3/Outputs/BucketMetadataTableConfiguration.cs +++ /dev/null @@ -1,39 +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.S3.Outputs -{ - - [OutputType] - public sealed class BucketMetadataTableConfiguration - { - /// - /// Returns the <code>Error</code> value of the GetBucketMetadataTableConfiguration response. - /// - public readonly Outputs.BucketMetadataTableError? Error; - public readonly Outputs.BucketS3TablesDestination S3TablesDestination; - /// - /// Returns the <code>Status</code> value of the <code>GetBucketMetadataTableConfigurationResult</code> response. This value indicates the status of the metadata table. The status values are:<br/><code>CREATING</code> - The metadata table is in the process of being created in the specified table bucket.<br/><code>ACTIVE</code> - The metadata table has been created successfully and records are being delivered to the table.<br/><code>FAILED</code> - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - /// - public readonly string? Status; - - [OutputConstructor] - private BucketMetadataTableConfiguration( - Outputs.BucketMetadataTableError? error, - - Outputs.BucketS3TablesDestination s3TablesDestination, - - string? status) - { - Error = error; - S3TablesDestination = s3TablesDestination; - Status = status; - } - } -} diff --git a/sdk/dotnet/S3/Outputs/BucketMetadataTableError.cs b/sdk/dotnet/S3/Outputs/BucketMetadataTableError.cs deleted file mode 100644 index 061afdc2f1..0000000000 --- a/sdk/dotnet/S3/Outputs/BucketMetadataTableError.cs +++ /dev/null @@ -1,35 +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.S3.Outputs -{ - - [OutputType] - public sealed class BucketMetadataTableError - { - /// - /// If the <code>CreateBucketMetadataTableConfiguration</code> request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:<br/><code>AccessDeniedCreatingResources</code> - You don't have sufficient permissions to create the required resources. Make sure that you have <code>s3tables:CreateNamespace</code>, <code>s3tables:CreateTable</code>, <code>s3tables:GetTable</code> and <code>s3tables:PutTablePolicy</code> permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>AccessDeniedWritingToTable</code> - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>DestinationTableNotFound</code> - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>ServerInternalError</code> - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableAlreadyExists</code> - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableBucketNotFound</code> - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - /// - public readonly string ErrorCode; - /// - /// If the <code>CreateBucketMetadataTableConfiguration</code> request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:<br/><code>AccessDeniedCreatingResources</code> - You don't have sufficient permissions to create the required resources. Make sure that you have <code>s3tables:CreateNamespace</code>, <code>s3tables:CreateTable</code>, <code>s3tables:GetTable</code> and <code>s3tables:PutTablePolicy</code> permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>AccessDeniedWritingToTable</code> - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>DestinationTableNotFound</code> - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>ServerInternalError</code> - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableAlreadyExists</code> - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.<br/><code>TableBucketNotFound</code> - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - /// - public readonly string ErrorMessage; - - [OutputConstructor] - private BucketMetadataTableError( - string errorCode, - - string errorMessage) - { - ErrorCode = errorCode; - ErrorMessage = errorMessage; - } - } -} diff --git a/sdk/dotnet/S3/Outputs/BucketS3TablesDestination.cs b/sdk/dotnet/S3/Outputs/BucketS3TablesDestination.cs deleted file mode 100644 index afe8a95ce7..0000000000 --- a/sdk/dotnet/S3/Outputs/BucketS3TablesDestination.cs +++ /dev/null @@ -1,49 +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.S3.Outputs -{ - - [OutputType] - public sealed class BucketS3TablesDestination - { - /// - /// The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket. - /// - public readonly string? TableArn; - /// - /// The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - /// - public readonly string TableBucketArn; - /// - /// The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket. - /// - public readonly string TableName; - /// - /// The table bucket namespace for the metadata table in your metadata table configuration. This value is always <code>aws_s3_metadata</code>. - /// - public readonly string? TableNamespace; - - [OutputConstructor] - private BucketS3TablesDestination( - string? tableArn, - - string tableBucketArn, - - string tableName, - - string? tableNamespace) - { - TableArn = tableArn; - TableBucketArn = tableBucketArn; - TableName = tableName; - TableNamespace = tableNamespace; - } - } -} diff --git a/sdk/dotnet/S3Tables/GetTableBucket.cs b/sdk/dotnet/S3Tables/GetTableBucket.cs index c3ff89403c..4674e12ca1 100644 --- a/sdk/dotnet/S3Tables/GetTableBucket.cs +++ b/sdk/dotnet/S3Tables/GetTableBucket.cs @@ -33,6 +33,9 @@ public static Output Invoke(GetTableBucketInvokeArgs args, public sealed class GetTableBucketArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// [Input("tableBucketArn", required: true)] public string TableBucketArn { get; set; } = null!; @@ -44,6 +47,9 @@ public GetTableBucketArgs() public sealed class GetTableBucketInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// [Input("tableBucketArn", required: true)] public Input TableBucketArn { get; set; } = null!; @@ -57,7 +63,13 @@ public GetTableBucketInvokeArgs() [OutputType] public sealed class GetTableBucketResult { + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// public readonly string? TableBucketArn; + /// + /// The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + /// public readonly Outputs.TableBucketUnreferencedFileRemoval? UnreferencedFileRemoval; [OutputConstructor] diff --git a/sdk/dotnet/S3Tables/GetTableBucketPolicy.cs b/sdk/dotnet/S3Tables/GetTableBucketPolicy.cs index 8e0b9f49ac..dbc052476a 100644 --- a/sdk/dotnet/S3Tables/GetTableBucketPolicy.cs +++ b/sdk/dotnet/S3Tables/GetTableBucketPolicy.cs @@ -33,6 +33,9 @@ public static Output Invoke(GetTableBucketPolicyInvo public sealed class GetTableBucketPolicyArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// [Input("tableBucketArn", required: true)] public string TableBucketArn { get; set; } = null!; @@ -44,6 +47,9 @@ public GetTableBucketPolicyArgs() public sealed class GetTableBucketPolicyInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// [Input("tableBucketArn", required: true)] public Input TableBucketArn { get; set; } = null!; @@ -57,6 +63,9 @@ public GetTableBucketPolicyInvokeArgs() [OutputType] public sealed class GetTableBucketPolicyResult { + /// + /// The bucket policy JSON for the table bucket. + /// public readonly Outputs.TableBucketPolicyResourcePolicy? ResourcePolicy; [OutputConstructor] diff --git a/sdk/dotnet/S3Tables/TableBucket.cs b/sdk/dotnet/S3Tables/TableBucket.cs index 3595b4525e..99fd472b6c 100644 --- a/sdk/dotnet/S3Tables/TableBucket.cs +++ b/sdk/dotnet/S3Tables/TableBucket.cs @@ -15,12 +15,21 @@ namespace Pulumi.AwsNative.S3Tables [AwsNativeResourceType("aws-native:s3tables:TableBucket")] public partial class TableBucket : global::Pulumi.CustomResource { + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// [Output("tableBucketArn")] public Output TableBucketArn { get; private set; } = null!; + /// + /// The name for the table bucket. + /// [Output("tableBucketName")] public Output TableBucketName { get; private set; } = null!; + /// + /// The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + /// [Output("unreferencedFileRemoval")] public Output UnreferencedFileRemoval { get; private set; } = null!; @@ -73,9 +82,15 @@ public static TableBucket Get(string name, Input id, CustomResourceOptio public sealed class TableBucketArgs : global::Pulumi.ResourceArgs { + /// + /// The name for the table bucket. + /// [Input("tableBucketName")] public Input? TableBucketName { get; set; } + /// + /// The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + /// [Input("unreferencedFileRemoval")] public Input? UnreferencedFileRemoval { get; set; } diff --git a/sdk/dotnet/S3Tables/TableBucketPolicy.cs b/sdk/dotnet/S3Tables/TableBucketPolicy.cs index 5fea7bad89..6ace9b685e 100644 --- a/sdk/dotnet/S3Tables/TableBucketPolicy.cs +++ b/sdk/dotnet/S3Tables/TableBucketPolicy.cs @@ -15,9 +15,15 @@ namespace Pulumi.AwsNative.S3Tables [AwsNativeResourceType("aws-native:s3tables:TableBucketPolicy")] public partial class TableBucketPolicy : global::Pulumi.CustomResource { + /// + /// The bucket policy JSON for the table bucket. + /// [Output("resourcePolicy")] public Output ResourcePolicy { get; private set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// [Output("tableBucketArn")] public Output TableBucketArn { get; private set; } = null!; @@ -70,9 +76,15 @@ public static TableBucketPolicy Get(string name, Input id, CustomResourc public sealed class TableBucketPolicyArgs : global::Pulumi.ResourceArgs { + /// + /// The bucket policy JSON for the table bucket. + /// [Input("resourcePolicy", required: true)] public Input ResourcePolicy { get; set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the table bucket. + /// [Input("tableBucketArn", required: true)] public Input TableBucketArn { get; set; } = null!; diff --git a/sdk/dotnet/SageMaker/Inputs/DomainDefaultSpaceSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainDefaultSpaceSettingsArgs.cs index 59ff62d878..765cabe21e 100644 --- a/sdk/dotnet/SageMaker/Inputs/DomainDefaultSpaceSettingsArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/DomainDefaultSpaceSettingsArgs.cs @@ -19,7 +19,7 @@ public sealed class DomainDefaultSpaceSettingsArgs : global::Pulumi.ResourceArgs private InputList? _customFileSystemConfigs; /// - /// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + /// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. /// public InputList CustomFileSystemConfigs { diff --git a/sdk/dotnet/SageMaker/Inputs/DomainEfsFileSystemConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainEfsFileSystemConfigArgs.cs index e3f8864bd9..26a5027603 100644 --- a/sdk/dotnet/SageMaker/Inputs/DomainEfsFileSystemConfigArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/DomainEfsFileSystemConfigArgs.cs @@ -19,7 +19,7 @@ public sealed class DomainEfsFileSystemConfigArgs : global::Pulumi.ResourceArgs public Input FileSystemId { get; set; } = null!; /// - /// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + /// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. /// [Input("fileSystemPath")] public Input? FileSystemPath { get; set; } diff --git a/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs index 3aa4a4e40d..f41742b315 100644 --- a/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs @@ -27,7 +27,7 @@ public sealed class DomainUserSettingsArgs : global::Pulumi.ResourceArgs private InputList? _customFileSystemConfigs; /// - /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. /// /// SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. /// diff --git a/sdk/dotnet/SageMaker/Inputs/InferenceComponentSpecificationArgs.cs b/sdk/dotnet/SageMaker/Inputs/InferenceComponentSpecificationArgs.cs index 0805936602..436acd080b 100644 --- a/sdk/dotnet/SageMaker/Inputs/InferenceComponentSpecificationArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/InferenceComponentSpecificationArgs.cs @@ -42,7 +42,7 @@ public sealed class InferenceComponentSpecificationArgs : global::Pulumi.Resourc public Input? Container { get; set; } /// - /// The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + /// The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. /// [Input("modelName")] public Input? ModelName { get; set; } diff --git a/sdk/dotnet/SageMaker/Inputs/ModelCardTrainingMetricArgs.cs b/sdk/dotnet/SageMaker/Inputs/ModelCardTrainingMetricArgs.cs index c59fd34898..98d104e048 100644 --- a/sdk/dotnet/SageMaker/Inputs/ModelCardTrainingMetricArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/ModelCardTrainingMetricArgs.cs @@ -16,7 +16,7 @@ namespace Pulumi.AwsNative.SageMaker.Inputs public sealed class ModelCardTrainingMetricArgs : global::Pulumi.ResourceArgs { /// - /// The name of the result from the SageMaker training job. + /// The name of the result from the SageMaker AI training job. /// [Input("name", required: true)] public Input Name { get; set; } = null!; @@ -28,7 +28,7 @@ public sealed class ModelCardTrainingMetricArgs : global::Pulumi.ResourceArgs public Input? Notes { get; set; } /// - /// The value of a result from the SageMaker training job. + /// The value of a result from the SageMaker AI training job. /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleMonitoringJobDefinitionArgs.cs b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleMonitoringJobDefinitionArgs.cs index 63af0c6780..5a1fef4636 100644 --- a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleMonitoringJobDefinitionArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleMonitoringJobDefinitionArgs.cs @@ -37,7 +37,7 @@ public sealed class MonitoringScheduleMonitoringJobDefinitionArgs : global::Pulu private InputList? _monitoringInputs; /// - /// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + /// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. /// public InputList MonitoringInputs { diff --git a/sdk/dotnet/SageMaker/Inputs/SpaceJupyterServerAppSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/SpaceJupyterServerAppSettingsArgs.cs index fa07dcb87d..804b621dea 100644 --- a/sdk/dotnet/SageMaker/Inputs/SpaceJupyterServerAppSettingsArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/SpaceJupyterServerAppSettingsArgs.cs @@ -16,7 +16,7 @@ namespace Pulumi.AwsNative.SageMaker.Inputs public sealed class SpaceJupyterServerAppSettingsArgs : global::Pulumi.ResourceArgs { /// - /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. /// [Input("defaultResourceSpec")] public Input? DefaultResourceSpec { get; set; } diff --git a/sdk/dotnet/SageMaker/Inputs/SpaceSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/SpaceSettingsArgs.cs index 0901117e8d..1437002c9f 100644 --- a/sdk/dotnet/SageMaker/Inputs/SpaceSettingsArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/SpaceSettingsArgs.cs @@ -31,7 +31,7 @@ public sealed class SpaceSettingsArgs : global::Pulumi.ResourceArgs private InputList? _customFileSystems; /// - /// A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + /// A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. /// public InputList CustomFileSystems { diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileEfsFileSystemConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileEfsFileSystemConfigArgs.cs index b5310868f6..6f17b7dfbd 100644 --- a/sdk/dotnet/SageMaker/Inputs/UserProfileEfsFileSystemConfigArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileEfsFileSystemConfigArgs.cs @@ -19,7 +19,7 @@ public sealed class UserProfileEfsFileSystemConfigArgs : global::Pulumi.Resource public Input FileSystemId { get; set; } = null!; /// - /// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + /// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. /// [Input("fileSystemPath")] public Input? FileSystemPath { get; set; } diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs index 428b428d14..82c0dd582c 100644 --- a/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs @@ -27,7 +27,7 @@ public sealed class UserProfileUserSettingsArgs : global::Pulumi.ResourceArgs private InputList? _customFileSystemConfigs; /// - /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. /// /// SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. /// diff --git a/sdk/dotnet/SageMaker/Outputs/DomainDefaultSpaceSettings.cs b/sdk/dotnet/SageMaker/Outputs/DomainDefaultSpaceSettings.cs index c7605ce713..607b719f0b 100644 --- a/sdk/dotnet/SageMaker/Outputs/DomainDefaultSpaceSettings.cs +++ b/sdk/dotnet/SageMaker/Outputs/DomainDefaultSpaceSettings.cs @@ -17,7 +17,7 @@ namespace Pulumi.AwsNative.SageMaker.Outputs public sealed class DomainDefaultSpaceSettings { /// - /// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + /// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. /// public readonly ImmutableArray CustomFileSystemConfigs; /// diff --git a/sdk/dotnet/SageMaker/Outputs/DomainEfsFileSystemConfig.cs b/sdk/dotnet/SageMaker/Outputs/DomainEfsFileSystemConfig.cs index 16aca43e54..b5d3a7b3b4 100644 --- a/sdk/dotnet/SageMaker/Outputs/DomainEfsFileSystemConfig.cs +++ b/sdk/dotnet/SageMaker/Outputs/DomainEfsFileSystemConfig.cs @@ -18,7 +18,7 @@ public sealed class DomainEfsFileSystemConfig /// public readonly string FileSystemId; /// - /// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + /// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. /// public readonly string? FileSystemPath; diff --git a/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs b/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs index bbea4ed335..5507945dc3 100644 --- a/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs +++ b/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs @@ -23,7 +23,7 @@ public sealed class DomainUserSettings /// public readonly Outputs.DomainCodeEditorAppSettings? CodeEditorAppSettings; /// - /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. /// /// SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. /// diff --git a/sdk/dotnet/SageMaker/Outputs/InferenceComponentSpecification.cs b/sdk/dotnet/SageMaker/Outputs/InferenceComponentSpecification.cs index 44471b251f..ce8f4f62f2 100644 --- a/sdk/dotnet/SageMaker/Outputs/InferenceComponentSpecification.cs +++ b/sdk/dotnet/SageMaker/Outputs/InferenceComponentSpecification.cs @@ -37,7 +37,7 @@ public sealed class InferenceComponentSpecification /// public readonly Outputs.InferenceComponentContainerSpecification? Container; /// - /// The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + /// The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. /// public readonly string? ModelName; /// diff --git a/sdk/dotnet/SageMaker/Outputs/ModelCardTrainingMetric.cs b/sdk/dotnet/SageMaker/Outputs/ModelCardTrainingMetric.cs index 363809bb42..cf63336696 100644 --- a/sdk/dotnet/SageMaker/Outputs/ModelCardTrainingMetric.cs +++ b/sdk/dotnet/SageMaker/Outputs/ModelCardTrainingMetric.cs @@ -17,7 +17,7 @@ namespace Pulumi.AwsNative.SageMaker.Outputs public sealed class ModelCardTrainingMetric { /// - /// The name of the result from the SageMaker training job. + /// The name of the result from the SageMaker AI training job. /// public readonly string Name; /// @@ -25,7 +25,7 @@ public sealed class ModelCardTrainingMetric /// public readonly string? Notes; /// - /// The value of a result from the SageMaker training job. + /// The value of a result from the SageMaker AI training job. /// public readonly double Value; diff --git a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleMonitoringJobDefinition.cs b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleMonitoringJobDefinition.cs index 103b750483..a742ae4632 100644 --- a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleMonitoringJobDefinition.cs +++ b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleMonitoringJobDefinition.cs @@ -29,7 +29,7 @@ public sealed class MonitoringScheduleMonitoringJobDefinition /// public readonly Outputs.MonitoringScheduleMonitoringAppSpecification MonitoringAppSpecification; /// - /// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + /// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. /// public readonly ImmutableArray MonitoringInputs; /// diff --git a/sdk/dotnet/SageMaker/Outputs/SpaceJupyterServerAppSettings.cs b/sdk/dotnet/SageMaker/Outputs/SpaceJupyterServerAppSettings.cs index 0b12a1386a..8c20dac5c9 100644 --- a/sdk/dotnet/SageMaker/Outputs/SpaceJupyterServerAppSettings.cs +++ b/sdk/dotnet/SageMaker/Outputs/SpaceJupyterServerAppSettings.cs @@ -17,7 +17,7 @@ namespace Pulumi.AwsNative.SageMaker.Outputs public sealed class SpaceJupyterServerAppSettings { /// - /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. /// public readonly Outputs.SpaceResourceSpec? DefaultResourceSpec; /// diff --git a/sdk/dotnet/SageMaker/Outputs/SpaceSettings.cs b/sdk/dotnet/SageMaker/Outputs/SpaceSettings.cs index 35586d5c68..efac7e540e 100644 --- a/sdk/dotnet/SageMaker/Outputs/SpaceSettings.cs +++ b/sdk/dotnet/SageMaker/Outputs/SpaceSettings.cs @@ -25,7 +25,7 @@ public sealed class SpaceSettings /// public readonly Outputs.SpaceCodeEditorAppSettings? CodeEditorAppSettings; /// - /// A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + /// A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. /// public readonly ImmutableArray CustomFileSystems; /// diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileEfsFileSystemConfig.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileEfsFileSystemConfig.cs index e4f5a83182..ff9e99ba99 100644 --- a/sdk/dotnet/SageMaker/Outputs/UserProfileEfsFileSystemConfig.cs +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileEfsFileSystemConfig.cs @@ -18,7 +18,7 @@ public sealed class UserProfileEfsFileSystemConfig /// public readonly string FileSystemId; /// - /// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + /// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. /// public readonly string? FileSystemPath; diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs index c316ae1d2a..ec29f6f963 100644 --- a/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs @@ -23,7 +23,7 @@ public sealed class UserProfileUserSettings /// public readonly Outputs.UserProfileCodeEditorAppSettings? CodeEditorAppSettings; /// - /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + /// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. /// /// SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. /// diff --git a/sdk/dotnet/Transfer/Enums.cs b/sdk/dotnet/Transfer/Enums.cs index f11f77257b..cb22988c0a 100644 --- a/sdk/dotnet/Transfer/Enums.cs +++ b/sdk/dotnet/Transfer/Enums.cs @@ -562,6 +562,38 @@ private ServerSftpAuthenticationMethods(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct ServerState : IEquatable + { + private readonly string _value; + + private ServerState(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ServerState Offline { get; } = new ServerState("OFFLINE"); + public static ServerState Online { get; } = new ServerState("ONLINE"); + public static ServerState Starting { get; } = new ServerState("STARTING"); + public static ServerState Stopping { get; } = new ServerState("STOPPING"); + public static ServerState StartFailed { get; } = new ServerState("START_FAILED"); + public static ServerState StopFailed { get; } = new ServerState("STOP_FAILED"); + + public static bool operator ==(ServerState left, ServerState right) => left.Equals(right); + public static bool operator !=(ServerState left, ServerState right) => !left.Equals(right); + + public static explicit operator string(ServerState value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ServerState other && Equals(other); + public bool Equals(ServerState 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 ServerTlsSessionResumptionMode : IEquatable { diff --git a/sdk/dotnet/Transfer/GetServer.cs b/sdk/dotnet/Transfer/GetServer.cs index ff846b49e8..5a2c482c0e 100644 --- a/sdk/dotnet/Transfer/GetServer.cs +++ b/sdk/dotnet/Transfer/GetServer.cs @@ -179,6 +179,7 @@ public sealed class GetServerResult /// An example `ServerId` is `s-01234567890abcdef` . /// public readonly string? ServerId; + public readonly Pulumi.AwsNative.Transfer.ServerState? State; /// /// Specifies the log groups to which your server logs are sent. /// @@ -234,6 +235,8 @@ private GetServerResult( string? serverId, + Pulumi.AwsNative.Transfer.ServerState? state, + ImmutableArray structuredLogDestinations, ImmutableArray tags, @@ -254,6 +257,7 @@ private GetServerResult( S3StorageOptions = s3StorageOptions; SecurityPolicyName = securityPolicyName; ServerId = serverId; + State = state; StructuredLogDestinations = structuredLogDestinations; Tags = tags; WorkflowDetails = workflowDetails; diff --git a/sdk/dotnet/Transfer/Server.cs b/sdk/dotnet/Transfer/Server.cs index d796c7f45c..aee8098c8c 100644 --- a/sdk/dotnet/Transfer/Server.cs +++ b/sdk/dotnet/Transfer/Server.cs @@ -471,6 +471,9 @@ public partial class Server : global::Pulumi.CustomResource [Output("serverId")] public Output ServerId { get; private set; } = null!; + [Output("state")] + public Output State { get; private set; } = null!; + /// /// Specifies the log groups to which your server logs are sent. /// diff --git a/sdk/dotnet/VpcLattice/Enums.cs b/sdk/dotnet/VpcLattice/Enums.cs index dc8f3a3091..830cd43cd0 100644 --- a/sdk/dotnet/VpcLattice/Enums.cs +++ b/sdk/dotnet/VpcLattice/Enums.cs @@ -101,6 +101,9 @@ private ListenerProtocol(string value) public override string ToString() => _value; } + /// + /// The auth type for the resource configuration. + /// [EnumType] public readonly struct ResourceConfigurationAuthType : IEquatable { @@ -158,6 +161,9 @@ private ResourceConfigurationDnsResourceIpAddressType(string value) public override string ToString() => _value; } + /// + /// (SINGLE, GROUP) The protocol accepted by the resource configuration. + /// [EnumType] public readonly struct ResourceConfigurationProtocolType : IEquatable { @@ -185,6 +191,14 @@ private ResourceConfigurationProtocolType(string value) public override string ToString() => _value; } + /// + /// The type of resource configuration. A resource configuration can be one of the following types: + /// + /// - *SINGLE* - A single resource. + /// - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + /// - *CHILD* - A single resource that is part of a group resource configuration. + /// - *ARN* - An AWS resource. + /// [EnumType] public readonly struct ResourceConfigurationType : IEquatable { @@ -215,6 +229,9 @@ private ResourceConfigurationType(string value) public override string ToString() => _value; } + /// + /// The type of IP address used by the resource gateway. + /// [EnumType] public readonly struct ResourceGatewayIpAddressType : IEquatable { diff --git a/sdk/dotnet/VpcLattice/GetResourceConfiguration.cs b/sdk/dotnet/VpcLattice/GetResourceConfiguration.cs index 5210b55a51..717806c3c0 100644 --- a/sdk/dotnet/VpcLattice/GetResourceConfiguration.cs +++ b/sdk/dotnet/VpcLattice/GetResourceConfiguration.cs @@ -33,6 +33,9 @@ public static Output Invoke(GetResourceConfigura public sealed class GetResourceConfigurationArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the resource configuration. + /// [Input("arn", required: true)] public string Arn { get; set; } = null!; @@ -44,6 +47,9 @@ public GetResourceConfigurationArgs() public sealed class GetResourceConfigurationInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the resource configuration. + /// [Input("arn", required: true)] public Input Arn { get; set; } = null!; @@ -57,12 +63,37 @@ public GetResourceConfigurationInvokeArgs() [OutputType] public sealed class GetResourceConfigurationResult { + /// + /// Specifies whether the resource configuration can be associated with a sharable service network. + /// public readonly bool? AllowAssociationToSharableServiceNetwork; + /// + /// The Amazon Resource Name (ARN) of the resource configuration. + /// public readonly string? Arn; + /// + /// The ID of the resource configuration. + /// public readonly string? Id; + /// + /// The name of the resource configuration. + /// public readonly string? Name; + /// + /// (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + /// public readonly ImmutableArray PortRanges; + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// public readonly object? ResourceConfigurationDefinition; + /// + /// The tags for the resource configuration. + /// public readonly ImmutableArray Tags; [OutputConstructor] diff --git a/sdk/dotnet/VpcLattice/GetResourceGateway.cs b/sdk/dotnet/VpcLattice/GetResourceGateway.cs index 3b810b6641..067063b518 100644 --- a/sdk/dotnet/VpcLattice/GetResourceGateway.cs +++ b/sdk/dotnet/VpcLattice/GetResourceGateway.cs @@ -33,6 +33,9 @@ public static Output Invoke(GetResourceGatewayInvokeAr public sealed class GetResourceGatewayArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the resource gateway. + /// [Input("arn", required: true)] public string Arn { get; set; } = null!; @@ -44,6 +47,9 @@ public GetResourceGatewayArgs() public sealed class GetResourceGatewayInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the resource gateway. + /// [Input("arn", required: true)] public Input Arn { get; set; } = null!; @@ -57,12 +63,21 @@ public GetResourceGatewayInvokeArgs() [OutputType] public sealed class GetResourceGatewayResult { + /// + /// The Amazon Resource Name (ARN) of the resource gateway. + /// public readonly string? Arn; + /// + /// The ID of the resource gateway. + /// public readonly string? Id; /// /// The ID of one or more security groups to associate with the endpoint network interface. /// public readonly ImmutableArray SecurityGroupIds; + /// + /// The tags for the resource gateway. + /// public readonly ImmutableArray Tags; [OutputConstructor] diff --git a/sdk/dotnet/VpcLattice/GetServiceNetwork.cs b/sdk/dotnet/VpcLattice/GetServiceNetwork.cs index c1cda14634..94e0fdec02 100644 --- a/sdk/dotnet/VpcLattice/GetServiceNetwork.cs +++ b/sdk/dotnet/VpcLattice/GetServiceNetwork.cs @@ -86,6 +86,9 @@ public sealed class GetServiceNetworkResult /// The date and time of the last update, specified in ISO-8601 format. /// public readonly string? LastUpdatedAt; + /// + /// Specify if the service network should be enabled for sharing. + /// public readonly Outputs.ServiceNetworkSharingConfig? SharingConfig; /// /// The tags for the service network. diff --git a/sdk/dotnet/VpcLattice/GetServiceNetworkResourceAssociation.cs b/sdk/dotnet/VpcLattice/GetServiceNetworkResourceAssociation.cs index fe42650ae4..79b269d963 100644 --- a/sdk/dotnet/VpcLattice/GetServiceNetworkResourceAssociation.cs +++ b/sdk/dotnet/VpcLattice/GetServiceNetworkResourceAssociation.cs @@ -33,6 +33,9 @@ public static Output Invoke(GetServi public sealed class GetServiceNetworkResourceAssociationArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the association. + /// [Input("arn", required: true)] public string Arn { get; set; } = null!; @@ -44,6 +47,9 @@ public GetServiceNetworkResourceAssociationArgs() public sealed class GetServiceNetworkResourceAssociationInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The Amazon Resource Name (ARN) of the association. + /// [Input("arn", required: true)] public Input Arn { get; set; } = null!; @@ -57,8 +63,17 @@ public GetServiceNetworkResourceAssociationInvokeArgs() [OutputType] public sealed class GetServiceNetworkResourceAssociationResult { + /// + /// The Amazon Resource Name (ARN) of the association. + /// public readonly string? Arn; + /// + /// The ID of the association between the service network and resource configuration. + /// public readonly string? Id; + /// + /// A key-value pair to associate with a resource. + /// public readonly ImmutableArray Tags; [OutputConstructor] diff --git a/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition0PropertiesArgs.cs b/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition0PropertiesArgs.cs index 19c5564eb2..d08b86b804 100644 --- a/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition0PropertiesArgs.cs +++ b/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition0PropertiesArgs.cs @@ -10,6 +10,13 @@ namespace Pulumi.AwsNative.VpcLattice.Inputs { + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// public sealed class ResourceConfigurationDefinition0PropertiesArgs : global::Pulumi.ResourceArgs { [Input("ipResource", required: true)] diff --git a/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition1PropertiesArgs.cs b/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition1PropertiesArgs.cs index 4fbf859d63..42b9e2f8fe 100644 --- a/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition1PropertiesArgs.cs +++ b/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition1PropertiesArgs.cs @@ -10,6 +10,13 @@ namespace Pulumi.AwsNative.VpcLattice.Inputs { + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// public sealed class ResourceConfigurationDefinition1PropertiesArgs : global::Pulumi.ResourceArgs { [Input("arnResource", required: true)] diff --git a/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition2PropertiesArgs.cs b/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition2PropertiesArgs.cs index 6b755ff292..90733b6a9e 100644 --- a/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition2PropertiesArgs.cs +++ b/sdk/dotnet/VpcLattice/Inputs/ResourceConfigurationDefinition2PropertiesArgs.cs @@ -10,6 +10,13 @@ namespace Pulumi.AwsNative.VpcLattice.Inputs { + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// public sealed class ResourceConfigurationDefinition2PropertiesArgs : global::Pulumi.ResourceArgs { [Input("dnsResource", required: true)] diff --git a/sdk/dotnet/VpcLattice/Inputs/ServiceNetworkSharingConfigArgs.cs b/sdk/dotnet/VpcLattice/Inputs/ServiceNetworkSharingConfigArgs.cs index ca4b328c2e..6014cfd513 100644 --- a/sdk/dotnet/VpcLattice/Inputs/ServiceNetworkSharingConfigArgs.cs +++ b/sdk/dotnet/VpcLattice/Inputs/ServiceNetworkSharingConfigArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.AwsNative.VpcLattice.Inputs public sealed class ServiceNetworkSharingConfigArgs : global::Pulumi.ResourceArgs { + /// + /// Specify if the service network should be enabled for sharing. + /// [Input("enabled", required: true)] public Input Enabled { get; set; } = null!; diff --git a/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition0Properties.cs b/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition0Properties.cs index 2b6c2d67a4..06bb0d781e 100644 --- a/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition0Properties.cs +++ b/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition0Properties.cs @@ -10,6 +10,13 @@ namespace Pulumi.AwsNative.VpcLattice.Outputs { + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// [OutputType] public sealed class ResourceConfigurationDefinition0Properties { diff --git a/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition1Properties.cs b/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition1Properties.cs index 2c15af6b16..f89cb4ec91 100644 --- a/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition1Properties.cs +++ b/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition1Properties.cs @@ -10,6 +10,13 @@ namespace Pulumi.AwsNative.VpcLattice.Outputs { + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// [OutputType] public sealed class ResourceConfigurationDefinition1Properties { diff --git a/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition2Properties.cs b/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition2Properties.cs index 5f2e6c77d2..f3576963c0 100644 --- a/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition2Properties.cs +++ b/sdk/dotnet/VpcLattice/Outputs/ResourceConfigurationDefinition2Properties.cs @@ -10,6 +10,13 @@ namespace Pulumi.AwsNative.VpcLattice.Outputs { + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// [OutputType] public sealed class ResourceConfigurationDefinition2Properties { diff --git a/sdk/dotnet/VpcLattice/Outputs/ServiceNetworkSharingConfig.cs b/sdk/dotnet/VpcLattice/Outputs/ServiceNetworkSharingConfig.cs index c8cd8bcac6..fb0db6483a 100644 --- a/sdk/dotnet/VpcLattice/Outputs/ServiceNetworkSharingConfig.cs +++ b/sdk/dotnet/VpcLattice/Outputs/ServiceNetworkSharingConfig.cs @@ -13,6 +13,9 @@ namespace Pulumi.AwsNative.VpcLattice.Outputs [OutputType] public sealed class ServiceNetworkSharingConfig { + /// + /// Specify if the service network should be enabled for sharing. + /// public readonly bool Enabled; [OutputConstructor] diff --git a/sdk/dotnet/VpcLattice/ResourceConfiguration.cs b/sdk/dotnet/VpcLattice/ResourceConfiguration.cs index 5752df6120..90d9eba36d 100644 --- a/sdk/dotnet/VpcLattice/ResourceConfiguration.cs +++ b/sdk/dotnet/VpcLattice/ResourceConfiguration.cs @@ -15,39 +15,84 @@ namespace Pulumi.AwsNative.VpcLattice [AwsNativeResourceType("aws-native:vpclattice:ResourceConfiguration")] public partial class ResourceConfiguration : global::Pulumi.CustomResource { + /// + /// Specifies whether the resource configuration can be associated with a sharable service network. + /// [Output("allowAssociationToSharableServiceNetwork")] public Output AllowAssociationToSharableServiceNetwork { get; private set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the resource configuration. + /// [Output("arn")] public Output Arn { get; private set; } = null!; + /// + /// The ID of the resource configuration. + /// [Output("awsId")] public Output AwsId { get; private set; } = null!; + /// + /// The name of the resource configuration. + /// [Output("name")] public Output Name { get; private set; } = null!; + /// + /// (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + /// [Output("portRanges")] public Output> PortRanges { get; private set; } = null!; + /// + /// (SINGLE, GROUP) The protocol accepted by the resource configuration. + /// [Output("protocolType")] public Output ProtocolType { get; private set; } = null!; + /// + /// The auth type for the resource configuration. + /// [Output("resourceConfigurationAuthType")] public Output ResourceConfigurationAuthType { get; private set; } = null!; + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// [Output("resourceConfigurationDefinition")] public Output ResourceConfigurationDefinition { get; private set; } = null!; + /// + /// The ID of the group resource configuration. + /// [Output("resourceConfigurationGroupId")] public Output ResourceConfigurationGroupId { get; private set; } = null!; + /// + /// The type of resource configuration. A resource configuration can be one of the following types: + /// + /// - *SINGLE* - A single resource. + /// - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + /// - *CHILD* - A single resource that is part of a group resource configuration. + /// - *ARN* - An AWS resource. + /// [Output("resourceConfigurationType")] public Output ResourceConfigurationType { get; private set; } = null!; + /// + /// The ID of the resource gateway. + /// [Output("resourceGatewayId")] public Output ResourceGatewayId { get; private set; } = null!; + /// + /// The tags for the resource configuration. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -103,40 +148,81 @@ public static ResourceConfiguration Get(string name, Input id, CustomRes public sealed class ResourceConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// Specifies whether the resource configuration can be associated with a sharable service network. + /// [Input("allowAssociationToSharableServiceNetwork")] public Input? AllowAssociationToSharableServiceNetwork { get; set; } + /// + /// The name of the resource configuration. + /// [Input("name")] public Input? Name { get; set; } [Input("portRanges")] private InputList? _portRanges; + + /// + /// (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + /// public InputList PortRanges { get => _portRanges ?? (_portRanges = new InputList()); set => _portRanges = value; } + /// + /// (SINGLE, GROUP) The protocol accepted by the resource configuration. + /// [Input("protocolType")] public Input? ProtocolType { get; set; } + /// + /// The auth type for the resource configuration. + /// [Input("resourceConfigurationAuthType")] public Input? ResourceConfigurationAuthType { get; set; } + /// + /// Identifies the resource configuration in one of the following ways: + /// + /// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + /// - *Domain name* - Any domain name that is publicly resolvable. + /// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + /// [Input("resourceConfigurationDefinition")] public object? ResourceConfigurationDefinition { get; set; } + /// + /// The ID of the group resource configuration. + /// [Input("resourceConfigurationGroupId")] public Input? ResourceConfigurationGroupId { get; set; } + /// + /// The type of resource configuration. A resource configuration can be one of the following types: + /// + /// - *SINGLE* - A single resource. + /// - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + /// - *CHILD* - A single resource that is part of a group resource configuration. + /// - *ARN* - An AWS resource. + /// [Input("resourceConfigurationType")] public Input? ResourceConfigurationType { get; set; } + /// + /// The ID of the resource gateway. + /// [Input("resourceGatewayId")] public Input? ResourceGatewayId { get; set; } [Input("tags")] private InputList? _tags; + + /// + /// The tags for the resource configuration. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/VpcLattice/ResourceGateway.cs b/sdk/dotnet/VpcLattice/ResourceGateway.cs index 1f879d7d65..6305cde486 100644 --- a/sdk/dotnet/VpcLattice/ResourceGateway.cs +++ b/sdk/dotnet/VpcLattice/ResourceGateway.cs @@ -15,15 +15,27 @@ namespace Pulumi.AwsNative.VpcLattice [AwsNativeResourceType("aws-native:vpclattice:ResourceGateway")] public partial class ResourceGateway : global::Pulumi.CustomResource { + /// + /// The Amazon Resource Name (ARN) of the resource gateway. + /// [Output("arn")] public Output Arn { get; private set; } = null!; + /// + /// The ID of the resource gateway. + /// [Output("awsId")] public Output AwsId { get; private set; } = null!; + /// + /// The type of IP address used by the resource gateway. + /// [Output("ipAddressType")] public Output IpAddressType { get; private set; } = null!; + /// + /// The name of the resource gateway. + /// [Output("name")] public Output Name { get; private set; } = null!; @@ -39,9 +51,15 @@ public partial class ResourceGateway : global::Pulumi.CustomResource [Output("subnetIds")] public Output> SubnetIds { get; private set; } = null!; + /// + /// The tags for the resource gateway. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; + /// + /// The ID of the VPC for the resource gateway. + /// [Output("vpcIdentifier")] public Output VpcIdentifier { get; private set; } = null!; @@ -97,9 +115,15 @@ public static ResourceGateway Get(string name, Input id, CustomResourceO public sealed class ResourceGatewayArgs : global::Pulumi.ResourceArgs { + /// + /// The type of IP address used by the resource gateway. + /// [Input("ipAddressType")] public Input? IpAddressType { get; set; } + /// + /// The name of the resource gateway. + /// [Input("name")] public Input? Name { get; set; } @@ -129,12 +153,19 @@ public InputList SubnetIds [Input("tags")] private InputList? _tags; + + /// + /// The tags for the resource gateway. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); set => _tags = value; } + /// + /// The ID of the VPC for the resource gateway. + /// [Input("vpcIdentifier")] public Input? VpcIdentifier { get; set; } diff --git a/sdk/dotnet/VpcLattice/ServiceNetwork.cs b/sdk/dotnet/VpcLattice/ServiceNetwork.cs index 567bfd0a98..f59fbfccec 100644 --- a/sdk/dotnet/VpcLattice/ServiceNetwork.cs +++ b/sdk/dotnet/VpcLattice/ServiceNetwork.cs @@ -56,6 +56,9 @@ public partial class ServiceNetwork : global::Pulumi.CustomResource [Output("name")] public Output Name { get; private set; } = null!; + /// + /// Specify if the service network should be enabled for sharing. + /// [Output("sharingConfig")] public Output SharingConfig { get; private set; } = null!; @@ -131,6 +134,9 @@ public sealed class ServiceNetworkArgs : global::Pulumi.ResourceArgs [Input("name")] public Input? Name { get; set; } + /// + /// Specify if the service network should be enabled for sharing. + /// [Input("sharingConfig")] public Input? SharingConfig { get; set; } diff --git a/sdk/dotnet/VpcLattice/ServiceNetworkResourceAssociation.cs b/sdk/dotnet/VpcLattice/ServiceNetworkResourceAssociation.cs index d5064af8ed..feb3dc499c 100644 --- a/sdk/dotnet/VpcLattice/ServiceNetworkResourceAssociation.cs +++ b/sdk/dotnet/VpcLattice/ServiceNetworkResourceAssociation.cs @@ -15,18 +15,33 @@ namespace Pulumi.AwsNative.VpcLattice [AwsNativeResourceType("aws-native:vpclattice:ServiceNetworkResourceAssociation")] public partial class ServiceNetworkResourceAssociation : global::Pulumi.CustomResource { + /// + /// The Amazon Resource Name (ARN) of the association. + /// [Output("arn")] public Output Arn { get; private set; } = null!; + /// + /// The ID of the association between the service network and resource configuration. + /// [Output("awsId")] public Output AwsId { get; private set; } = null!; + /// + /// The ID of the resource configuration associated with the service network. + /// [Output("resourceConfigurationId")] public Output ResourceConfigurationId { get; private set; } = null!; + /// + /// The ID of the service network associated with the resource configuration. + /// [Output("serviceNetworkId")] public Output ServiceNetworkId { get; private set; } = null!; + /// + /// A key-value pair to associate with a resource. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -80,14 +95,24 @@ public static ServiceNetworkResourceAssociation Get(string name, Input i public sealed class ServiceNetworkResourceAssociationArgs : global::Pulumi.ResourceArgs { + /// + /// The ID of the resource configuration associated with the service network. + /// [Input("resourceConfigurationId")] public Input? ResourceConfigurationId { get; set; } + /// + /// The ID of the service network associated with the resource configuration. + /// [Input("serviceNetworkId")] public Input? ServiceNetworkId { get; set; } [Input("tags")] private InputList? _tags; + + /// + /// A key-value pair to associate with a resource. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/Wisdom/AiGuardrailVersion.cs b/sdk/dotnet/Wisdom/AiGuardrailVersion.cs index d209aebc7f..7d2e6775b4 100644 --- a/sdk/dotnet/Wisdom/AiGuardrailVersion.cs +++ b/sdk/dotnet/Wisdom/AiGuardrailVersion.cs @@ -15,21 +15,39 @@ namespace Pulumi.AwsNative.Wisdom [AwsNativeResourceType("aws-native:wisdom:AiGuardrailVersion")] public partial class AiGuardrailVersion : global::Pulumi.CustomResource { + /// + /// The ARN of the AI guardrail version. + /// [Output("aiGuardrailArn")] public Output AiGuardrailArn { get; private set; } = null!; + /// + /// The ID of the AI guardrail version. + /// [Output("aiGuardrailId")] public Output AiGuardrailId { get; private set; } = null!; + /// + /// The ID of the AI guardrail version. + /// [Output("aiGuardrailVersionId")] public Output AiGuardrailVersionId { get; private set; } = null!; + /// + /// The ARN of the AI guardrail version assistant. + /// [Output("assistantArn")] public Output AssistantArn { get; private set; } = null!; + /// + /// The ID of the AI guardrail version assistant. + /// [Output("assistantId")] public Output AssistantId { get; private set; } = null!; + /// + /// The modified time of the AI guardrail version in seconds. + /// [Output("modifiedTimeSeconds")] public Output ModifiedTimeSeconds { get; private set; } = null!; @@ -90,12 +108,21 @@ public static AiGuardrailVersion Get(string name, Input id, CustomResour public sealed class AiGuardrailVersionArgs : global::Pulumi.ResourceArgs { + /// + /// The ID of the AI guardrail version. + /// [Input("aiGuardrailId", required: true)] public Input AiGuardrailId { get; set; } = null!; + /// + /// The ID of the AI guardrail version assistant. + /// [Input("assistantId", required: true)] public Input AssistantId { get; set; } = null!; + /// + /// The modified time of the AI guardrail version in seconds. + /// [Input("modifiedTimeSeconds")] public Input? ModifiedTimeSeconds { get; set; } diff --git a/sdk/dotnet/Wisdom/AiPromptVersion.cs b/sdk/dotnet/Wisdom/AiPromptVersion.cs index d0359b67f1..97e144b403 100644 --- a/sdk/dotnet/Wisdom/AiPromptVersion.cs +++ b/sdk/dotnet/Wisdom/AiPromptVersion.cs @@ -15,6 +15,9 @@ namespace Pulumi.AwsNative.Wisdom [AwsNativeResourceType("aws-native:wisdom:AiPromptVersion")] public partial class AiPromptVersion : global::Pulumi.CustomResource { + /// + /// The ARN of the AI prompt. + /// [Output("aiPromptArn")] public Output AiPromptArn { get; private set; } = null!; diff --git a/sdk/dotnet/Wisdom/GetAiGuardrailVersion.cs b/sdk/dotnet/Wisdom/GetAiGuardrailVersion.cs index c35e0ff047..21a8054404 100644 --- a/sdk/dotnet/Wisdom/GetAiGuardrailVersion.cs +++ b/sdk/dotnet/Wisdom/GetAiGuardrailVersion.cs @@ -33,9 +33,15 @@ public static Output Invoke(GetAiGuardrailVersionIn public sealed class GetAiGuardrailVersionArgs : global::Pulumi.InvokeArgs { + /// + /// The ID of the AI guardrail version. + /// [Input("aiGuardrailId", required: true)] public string AiGuardrailId { get; set; } = null!; + /// + /// The ID of the AI guardrail version assistant. + /// [Input("assistantId", required: true)] public string AssistantId { get; set; } = null!; @@ -53,9 +59,15 @@ public GetAiGuardrailVersionArgs() public sealed class GetAiGuardrailVersionInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The ID of the AI guardrail version. + /// [Input("aiGuardrailId", required: true)] public Input AiGuardrailId { get; set; } = null!; + /// + /// The ID of the AI guardrail version assistant. + /// [Input("assistantId", required: true)] public Input AssistantId { get; set; } = null!; @@ -75,8 +87,17 @@ public GetAiGuardrailVersionInvokeArgs() [OutputType] public sealed class GetAiGuardrailVersionResult { + /// + /// The ARN of the AI guardrail version. + /// public readonly string? AiGuardrailArn; + /// + /// The ID of the AI guardrail version. + /// public readonly string? AiGuardrailVersionId; + /// + /// The ARN of the AI guardrail version assistant. + /// public readonly string? AssistantArn; /// /// The version number for this AI Guardrail version. diff --git a/sdk/dotnet/Wisdom/GetAiPromptVersion.cs b/sdk/dotnet/Wisdom/GetAiPromptVersion.cs index c52de747a3..508d684890 100644 --- a/sdk/dotnet/Wisdom/GetAiPromptVersion.cs +++ b/sdk/dotnet/Wisdom/GetAiPromptVersion.cs @@ -87,6 +87,9 @@ public GetAiPromptVersionInvokeArgs() [OutputType] public sealed class GetAiPromptVersionResult { + /// + /// The ARN of the AI prompt. + /// public readonly string? AiPromptArn; public readonly string? AiPromptVersionId; public readonly string? AssistantArn; diff --git a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContentFilterConfigArgs.cs b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContentFilterConfigArgs.cs index 68b8653912..ad0da66b3a 100644 --- a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContentFilterConfigArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContentFilterConfigArgs.cs @@ -15,12 +15,21 @@ namespace Pulumi.AwsNative.Wisdom.Inputs /// public sealed class AiGuardrailGuardrailContentFilterConfigArgs : global::Pulumi.ResourceArgs { + /// + /// The strength of the input for the guardrail content filter. + /// [Input("inputStrength", required: true)] public Input InputStrength { get; set; } = null!; + /// + /// The output strength of the guardrail content filter. + /// [Input("outputStrength", required: true)] public Input OutputStrength { get; set; } = null!; + /// + /// The type of the guardrail content filter. + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContextualGroundingFilterConfigArgs.cs b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContextualGroundingFilterConfigArgs.cs index 946ac6b7eb..58734fe6aa 100644 --- a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContextualGroundingFilterConfigArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailContextualGroundingFilterConfigArgs.cs @@ -21,6 +21,9 @@ public sealed class AiGuardrailGuardrailContextualGroundingFilterConfigArgs : gl [Input("threshold", required: true)] public Input Threshold { get; set; } = null!; + /// + /// The type of this filter. + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailManagedWordsConfigArgs.cs b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailManagedWordsConfigArgs.cs index f31c86fcf6..36cdf0b6cb 100644 --- a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailManagedWordsConfigArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailManagedWordsConfigArgs.cs @@ -15,6 +15,9 @@ namespace Pulumi.AwsNative.Wisdom.Inputs /// public sealed class AiGuardrailGuardrailManagedWordsConfigArgs : global::Pulumi.ResourceArgs { + /// + /// The type of guardrail managed words. + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailPiiEntityConfigArgs.cs b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailPiiEntityConfigArgs.cs index e7cbc3f657..a57cdc045a 100644 --- a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailPiiEntityConfigArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailPiiEntityConfigArgs.cs @@ -15,6 +15,9 @@ namespace Pulumi.AwsNative.Wisdom.Inputs /// public sealed class AiGuardrailGuardrailPiiEntityConfigArgs : global::Pulumi.ResourceArgs { + /// + /// The action of guardrail PII entity configuration. + /// [Input("action", required: true)] public Input Action { get; set; } = null!; diff --git a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailRegexConfigArgs.cs b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailRegexConfigArgs.cs index 061ac5d8bc..f04fe92fc5 100644 --- a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailRegexConfigArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailRegexConfigArgs.cs @@ -15,6 +15,9 @@ namespace Pulumi.AwsNative.Wisdom.Inputs /// public sealed class AiGuardrailGuardrailRegexConfigArgs : global::Pulumi.ResourceArgs { + /// + /// The action of the guardrail regex configuration. + /// [Input("action", required: true)] public Input Action { get; set; } = null!; diff --git a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailTopicConfigArgs.cs b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailTopicConfigArgs.cs index bc89f56437..0366a91edb 100644 --- a/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailTopicConfigArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/AiGuardrailGuardrailTopicConfigArgs.cs @@ -39,6 +39,9 @@ public InputList Examples [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// Type of topic in a policy. + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationArgs.cs b/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationArgs.cs index 411c27c8e9..65cd324af5 100644 --- a/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationArgs.cs @@ -12,9 +12,15 @@ namespace Pulumi.AwsNative.Wisdom.Inputs public sealed class KnowledgeBaseBedrockFoundationModelConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// The model ARN of the Bedrock foundation model. + /// [Input("modelArn", required: true)] public Input ModelArn { get; set; } = null!; + /// + /// The parsing prompt of the Bedrock foundation model configuration. + /// [Input("parsingPrompt")] public Input? ParsingPrompt { get; set; } diff --git a/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs.cs b/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs.cs index 5b81271185..a7113de81d 100644 --- a/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs.cs +++ b/sdk/dotnet/Wisdom/Inputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs.cs @@ -10,6 +10,9 @@ namespace Pulumi.AwsNative.Wisdom.Inputs { + /// + /// The parsing prompt of the Bedrock foundation model configuration. + /// public sealed class KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs : global::Pulumi.ResourceArgs { [Input("parsingPromptText", required: true)] diff --git a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContentFilterConfig.cs b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContentFilterConfig.cs index f4ec333585..acd7c120bb 100644 --- a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContentFilterConfig.cs +++ b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContentFilterConfig.cs @@ -16,8 +16,17 @@ namespace Pulumi.AwsNative.Wisdom.Outputs [OutputType] public sealed class AiGuardrailGuardrailContentFilterConfig { + /// + /// The strength of the input for the guardrail content filter. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailFilterStrength InputStrength; + /// + /// The output strength of the guardrail content filter. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailFilterStrength OutputStrength; + /// + /// The type of the guardrail content filter. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailContentFilterType Type; [OutputConstructor] diff --git a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContextualGroundingFilterConfig.cs b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContextualGroundingFilterConfig.cs index 458d17edf3..87a0bf9fe3 100644 --- a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContextualGroundingFilterConfig.cs +++ b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailContextualGroundingFilterConfig.cs @@ -20,6 +20,9 @@ public sealed class AiGuardrailGuardrailContextualGroundingFilterConfig /// The threshold for this filter. /// public readonly double Threshold; + /// + /// The type of this filter. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailContextualGroundingFilterType Type; [OutputConstructor] diff --git a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailManagedWordsConfig.cs b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailManagedWordsConfig.cs index 91687801ad..074f7c4c25 100644 --- a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailManagedWordsConfig.cs +++ b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailManagedWordsConfig.cs @@ -16,6 +16,9 @@ namespace Pulumi.AwsNative.Wisdom.Outputs [OutputType] public sealed class AiGuardrailGuardrailManagedWordsConfig { + /// + /// The type of guardrail managed words. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailManagedWordsType Type; [OutputConstructor] diff --git a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailPiiEntityConfig.cs b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailPiiEntityConfig.cs index 7efee69e14..537f13e7b0 100644 --- a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailPiiEntityConfig.cs +++ b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailPiiEntityConfig.cs @@ -16,6 +16,9 @@ namespace Pulumi.AwsNative.Wisdom.Outputs [OutputType] public sealed class AiGuardrailGuardrailPiiEntityConfig { + /// + /// The action of guardrail PII entity configuration. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailSensitiveInformationAction Action; public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailPiiEntityType Type; diff --git a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailRegexConfig.cs b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailRegexConfig.cs index b672f7fde7..f59bc01e6a 100644 --- a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailRegexConfig.cs +++ b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailRegexConfig.cs @@ -16,6 +16,9 @@ namespace Pulumi.AwsNative.Wisdom.Outputs [OutputType] public sealed class AiGuardrailGuardrailRegexConfig { + /// + /// The action of the guardrail regex configuration. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailSensitiveInformationAction Action; /// /// The regex description. diff --git a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailTopicConfig.cs b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailTopicConfig.cs index 0e57f12d45..1d89506915 100644 --- a/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailTopicConfig.cs +++ b/sdk/dotnet/Wisdom/Outputs/AiGuardrailGuardrailTopicConfig.cs @@ -28,6 +28,9 @@ public sealed class AiGuardrailGuardrailTopicConfig /// Name of topic in topic policy /// public readonly string Name; + /// + /// Type of topic in a policy. + /// public readonly Pulumi.AwsNative.Wisdom.AiGuardrailGuardrailTopicType Type; [OutputConstructor] diff --git a/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfiguration.cs b/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfiguration.cs index a171e504f1..7d1dace269 100644 --- a/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfiguration.cs +++ b/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfiguration.cs @@ -13,7 +13,13 @@ namespace Pulumi.AwsNative.Wisdom.Outputs [OutputType] public sealed class KnowledgeBaseBedrockFoundationModelConfiguration { + /// + /// The model ARN of the Bedrock foundation model. + /// public readonly string ModelArn; + /// + /// The parsing prompt of the Bedrock foundation model configuration. + /// public readonly Outputs.KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties? ParsingPrompt; [OutputConstructor] diff --git a/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties.cs b/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties.cs index 854d7cf296..f7b8bdfe82 100644 --- a/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties.cs +++ b/sdk/dotnet/Wisdom/Outputs/KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties.cs @@ -10,6 +10,9 @@ namespace Pulumi.AwsNative.Wisdom.Outputs { + /// + /// The parsing prompt of the Bedrock foundation model configuration. + /// [OutputType] public sealed class KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties { diff --git a/sdk/dotnet/WorkSpaces/GetWorkspacesPool.cs b/sdk/dotnet/WorkSpaces/GetWorkspacesPool.cs index d3cc7f2ea4..58b476b2a2 100644 --- a/sdk/dotnet/WorkSpaces/GetWorkspacesPool.cs +++ b/sdk/dotnet/WorkSpaces/GetWorkspacesPool.cs @@ -95,6 +95,7 @@ public sealed class GetWorkspacesPoolResult /// The identifier of the pool. /// public readonly string? PoolId; + public readonly ImmutableArray Tags; /// /// The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. /// @@ -118,6 +119,8 @@ private GetWorkspacesPoolResult( string? poolId, + ImmutableArray tags, + Outputs.WorkspacesPoolTimeoutSettings? timeoutSettings) { ApplicationSettings = applicationSettings; @@ -128,6 +131,7 @@ private GetWorkspacesPoolResult( DirectoryId = directoryId; PoolArn = poolArn; PoolId = poolId; + Tags = tags; TimeoutSettings = timeoutSettings; } } diff --git a/sdk/dotnet/WorkSpaces/WorkspacesPool.cs b/sdk/dotnet/WorkSpaces/WorkspacesPool.cs index c0443432ff..43a90d4858 100644 --- a/sdk/dotnet/WorkSpaces/WorkspacesPool.cs +++ b/sdk/dotnet/WorkSpaces/WorkspacesPool.cs @@ -69,9 +69,6 @@ public partial class WorkspacesPool : global::Pulumi.CustomResource [Output("poolName")] public Output PoolName { get; private set; } = null!; - /// - /// The tags for the pool. - /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -168,10 +165,6 @@ public sealed class WorkspacesPoolArgs : global::Pulumi.ResourceArgs [Input("tags")] private InputList? _tags; - - /// - /// The tags for the pool. - /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/go/aws/appconfig/configurationProfile.go b/sdk/go/aws/appconfig/configurationProfile.go index 238ab85e4f..518e759436 100644 --- a/sdk/go/aws/appconfig/configurationProfile.go +++ b/sdk/go/aws/appconfig/configurationProfile.go @@ -21,6 +21,8 @@ type ConfigurationProfile struct { ApplicationId pulumi.StringOutput `pulumi:"applicationId"` // The configuration profile ID ConfigurationProfileId pulumi.StringOutput `pulumi:"configurationProfileId"` + // On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + DeletionProtectionCheck ConfigurationProfileDeletionProtectionCheckPtrOutput `pulumi:"deletionProtectionCheck"` // A description of the configuration profile. Description pulumi.StringPtrOutput `pulumi:"description"` // The Amazon Resource Name of the AWS Key Management Service key to encrypt new configuration data versions in the AWS AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an AWS KMS key for that particular service. @@ -95,6 +97,8 @@ func (ConfigurationProfileState) ElementType() reflect.Type { type configurationProfileArgs struct { // The application ID. ApplicationId string `pulumi:"applicationId"` + // On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + DeletionProtectionCheck *ConfigurationProfileDeletionProtectionCheck `pulumi:"deletionProtectionCheck"` // A description of the configuration profile. Description *string `pulumi:"description"` // The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated. @@ -117,6 +121,8 @@ type configurationProfileArgs struct { type ConfigurationProfileArgs struct { // The application ID. ApplicationId pulumi.StringInput + // On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + DeletionProtectionCheck ConfigurationProfileDeletionProtectionCheckPtrInput // A description of the configuration profile. Description pulumi.StringPtrInput // The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated. @@ -182,6 +188,13 @@ func (o ConfigurationProfileOutput) ConfigurationProfileId() pulumi.StringOutput return o.ApplyT(func(v *ConfigurationProfile) pulumi.StringOutput { return v.ConfigurationProfileId }).(pulumi.StringOutput) } +// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html +func (o ConfigurationProfileOutput) DeletionProtectionCheck() ConfigurationProfileDeletionProtectionCheckPtrOutput { + return o.ApplyT(func(v *ConfigurationProfile) ConfigurationProfileDeletionProtectionCheckPtrOutput { + return v.DeletionProtectionCheck + }).(ConfigurationProfileDeletionProtectionCheckPtrOutput) +} + // A description of the configuration profile. func (o ConfigurationProfileOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *ConfigurationProfile) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/appconfig/environment.go b/sdk/go/aws/appconfig/environment.go index d1389a4c78..648d8fea61 100644 --- a/sdk/go/aws/appconfig/environment.go +++ b/sdk/go/aws/appconfig/environment.go @@ -19,6 +19,8 @@ type Environment struct { // The application ID. ApplicationId pulumi.StringOutput `pulumi:"applicationId"` + // On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + DeletionProtectionCheck EnvironmentDeletionProtectionCheckPtrOutput `pulumi:"deletionProtectionCheck"` // A description of the environment. Description pulumi.StringPtrOutput `pulumi:"description"` // The environment ID. @@ -80,6 +82,8 @@ func (EnvironmentState) ElementType() reflect.Type { type environmentArgs struct { // The application ID. ApplicationId string `pulumi:"applicationId"` + // On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + DeletionProtectionCheck *EnvironmentDeletionProtectionCheck `pulumi:"deletionProtectionCheck"` // A description of the environment. Description *string `pulumi:"description"` // Amazon CloudWatch alarms to monitor during the deployment process. @@ -94,6 +98,8 @@ type environmentArgs struct { type EnvironmentArgs struct { // The application ID. ApplicationId pulumi.StringInput + // On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + DeletionProtectionCheck EnvironmentDeletionProtectionCheckPtrInput // A description of the environment. Description pulumi.StringPtrInput // Amazon CloudWatch alarms to monitor during the deployment process. @@ -146,6 +152,11 @@ func (o EnvironmentOutput) ApplicationId() pulumi.StringOutput { return o.ApplyT(func(v *Environment) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) } +// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html +func (o EnvironmentOutput) DeletionProtectionCheck() EnvironmentDeletionProtectionCheckPtrOutput { + return o.ApplyT(func(v *Environment) EnvironmentDeletionProtectionCheckPtrOutput { return v.DeletionProtectionCheck }).(EnvironmentDeletionProtectionCheckPtrOutput) +} + // A description of the environment. func (o EnvironmentOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Environment) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/appconfig/pulumiEnums.go b/sdk/go/aws/appconfig/pulumiEnums.go index e0dd94f20e..fc1850c5ff 100644 --- a/sdk/go/aws/appconfig/pulumiEnums.go +++ b/sdk/go/aws/appconfig/pulumiEnums.go @@ -10,6 +10,174 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) +// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html +type ConfigurationProfileDeletionProtectionCheck string + +const ( + ConfigurationProfileDeletionProtectionCheckAccountDefault = ConfigurationProfileDeletionProtectionCheck("ACCOUNT_DEFAULT") + ConfigurationProfileDeletionProtectionCheckApply = ConfigurationProfileDeletionProtectionCheck("APPLY") + ConfigurationProfileDeletionProtectionCheckBypass = ConfigurationProfileDeletionProtectionCheck("BYPASS") +) + +func (ConfigurationProfileDeletionProtectionCheck) ElementType() reflect.Type { + return reflect.TypeOf((*ConfigurationProfileDeletionProtectionCheck)(nil)).Elem() +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToConfigurationProfileDeletionProtectionCheckOutput() ConfigurationProfileDeletionProtectionCheckOutput { + return pulumi.ToOutput(e).(ConfigurationProfileDeletionProtectionCheckOutput) +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToConfigurationProfileDeletionProtectionCheckOutputWithContext(ctx context.Context) ConfigurationProfileDeletionProtectionCheckOutput { + return pulumi.ToOutputWithContext(ctx, e).(ConfigurationProfileDeletionProtectionCheckOutput) +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToConfigurationProfileDeletionProtectionCheckPtrOutput() ConfigurationProfileDeletionProtectionCheckPtrOutput { + return e.ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(context.Background()) +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) ConfigurationProfileDeletionProtectionCheckPtrOutput { + return ConfigurationProfileDeletionProtectionCheck(e).ToConfigurationProfileDeletionProtectionCheckOutputWithContext(ctx).ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(ctx) +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ConfigurationProfileDeletionProtectionCheck) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ConfigurationProfileDeletionProtectionCheckOutput struct{ *pulumi.OutputState } + +func (ConfigurationProfileDeletionProtectionCheckOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfigurationProfileDeletionProtectionCheck)(nil)).Elem() +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToConfigurationProfileDeletionProtectionCheckOutput() ConfigurationProfileDeletionProtectionCheckOutput { + return o +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToConfigurationProfileDeletionProtectionCheckOutputWithContext(ctx context.Context) ConfigurationProfileDeletionProtectionCheckOutput { + return o +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToConfigurationProfileDeletionProtectionCheckPtrOutput() ConfigurationProfileDeletionProtectionCheckPtrOutput { + return o.ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(context.Background()) +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) ConfigurationProfileDeletionProtectionCheckPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ConfigurationProfileDeletionProtectionCheck) *ConfigurationProfileDeletionProtectionCheck { + return &v + }).(ConfigurationProfileDeletionProtectionCheckPtrOutput) +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ConfigurationProfileDeletionProtectionCheck) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ConfigurationProfileDeletionProtectionCheckOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ConfigurationProfileDeletionProtectionCheck) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ConfigurationProfileDeletionProtectionCheckPtrOutput struct{ *pulumi.OutputState } + +func (ConfigurationProfileDeletionProtectionCheckPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ConfigurationProfileDeletionProtectionCheck)(nil)).Elem() +} + +func (o ConfigurationProfileDeletionProtectionCheckPtrOutput) ToConfigurationProfileDeletionProtectionCheckPtrOutput() ConfigurationProfileDeletionProtectionCheckPtrOutput { + return o +} + +func (o ConfigurationProfileDeletionProtectionCheckPtrOutput) ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) ConfigurationProfileDeletionProtectionCheckPtrOutput { + return o +} + +func (o ConfigurationProfileDeletionProtectionCheckPtrOutput) Elem() ConfigurationProfileDeletionProtectionCheckOutput { + return o.ApplyT(func(v *ConfigurationProfileDeletionProtectionCheck) ConfigurationProfileDeletionProtectionCheck { + if v != nil { + return *v + } + var ret ConfigurationProfileDeletionProtectionCheck + return ret + }).(ConfigurationProfileDeletionProtectionCheckOutput) +} + +func (o ConfigurationProfileDeletionProtectionCheckPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ConfigurationProfileDeletionProtectionCheckPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ConfigurationProfileDeletionProtectionCheck) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ConfigurationProfileDeletionProtectionCheckInput is an input type that accepts values of the ConfigurationProfileDeletionProtectionCheck enum +// A concrete instance of `ConfigurationProfileDeletionProtectionCheckInput` can be one of the following: +// +// ConfigurationProfileDeletionProtectionCheckAccountDefault +// ConfigurationProfileDeletionProtectionCheckApply +// ConfigurationProfileDeletionProtectionCheckBypass +type ConfigurationProfileDeletionProtectionCheckInput interface { + pulumi.Input + + ToConfigurationProfileDeletionProtectionCheckOutput() ConfigurationProfileDeletionProtectionCheckOutput + ToConfigurationProfileDeletionProtectionCheckOutputWithContext(context.Context) ConfigurationProfileDeletionProtectionCheckOutput +} + +var configurationProfileDeletionProtectionCheckPtrType = reflect.TypeOf((**ConfigurationProfileDeletionProtectionCheck)(nil)).Elem() + +type ConfigurationProfileDeletionProtectionCheckPtrInput interface { + pulumi.Input + + ToConfigurationProfileDeletionProtectionCheckPtrOutput() ConfigurationProfileDeletionProtectionCheckPtrOutput + ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(context.Context) ConfigurationProfileDeletionProtectionCheckPtrOutput +} + +type configurationProfileDeletionProtectionCheckPtr string + +func ConfigurationProfileDeletionProtectionCheckPtr(v string) ConfigurationProfileDeletionProtectionCheckPtrInput { + return (*configurationProfileDeletionProtectionCheckPtr)(&v) +} + +func (*configurationProfileDeletionProtectionCheckPtr) ElementType() reflect.Type { + return configurationProfileDeletionProtectionCheckPtrType +} + +func (in *configurationProfileDeletionProtectionCheckPtr) ToConfigurationProfileDeletionProtectionCheckPtrOutput() ConfigurationProfileDeletionProtectionCheckPtrOutput { + return pulumi.ToOutput(in).(ConfigurationProfileDeletionProtectionCheckPtrOutput) +} + +func (in *configurationProfileDeletionProtectionCheckPtr) ToConfigurationProfileDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) ConfigurationProfileDeletionProtectionCheckPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ConfigurationProfileDeletionProtectionCheckPtrOutput) +} + // The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types: // // Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration. @@ -354,13 +522,189 @@ func (in *deploymentStrategyReplicateToPtr) ToDeploymentStrategyReplicateToPtrOu return pulumi.ToOutputWithContext(ctx, in).(DeploymentStrategyReplicateToPtrOutput) } +// On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html +type EnvironmentDeletionProtectionCheck string + +const ( + EnvironmentDeletionProtectionCheckAccountDefault = EnvironmentDeletionProtectionCheck("ACCOUNT_DEFAULT") + EnvironmentDeletionProtectionCheckApply = EnvironmentDeletionProtectionCheck("APPLY") + EnvironmentDeletionProtectionCheckBypass = EnvironmentDeletionProtectionCheck("BYPASS") +) + +func (EnvironmentDeletionProtectionCheck) ElementType() reflect.Type { + return reflect.TypeOf((*EnvironmentDeletionProtectionCheck)(nil)).Elem() +} + +func (e EnvironmentDeletionProtectionCheck) ToEnvironmentDeletionProtectionCheckOutput() EnvironmentDeletionProtectionCheckOutput { + return pulumi.ToOutput(e).(EnvironmentDeletionProtectionCheckOutput) +} + +func (e EnvironmentDeletionProtectionCheck) ToEnvironmentDeletionProtectionCheckOutputWithContext(ctx context.Context) EnvironmentDeletionProtectionCheckOutput { + return pulumi.ToOutputWithContext(ctx, e).(EnvironmentDeletionProtectionCheckOutput) +} + +func (e EnvironmentDeletionProtectionCheck) ToEnvironmentDeletionProtectionCheckPtrOutput() EnvironmentDeletionProtectionCheckPtrOutput { + return e.ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(context.Background()) +} + +func (e EnvironmentDeletionProtectionCheck) ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) EnvironmentDeletionProtectionCheckPtrOutput { + return EnvironmentDeletionProtectionCheck(e).ToEnvironmentDeletionProtectionCheckOutputWithContext(ctx).ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(ctx) +} + +func (e EnvironmentDeletionProtectionCheck) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e EnvironmentDeletionProtectionCheck) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e EnvironmentDeletionProtectionCheck) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e EnvironmentDeletionProtectionCheck) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type EnvironmentDeletionProtectionCheckOutput struct{ *pulumi.OutputState } + +func (EnvironmentDeletionProtectionCheckOutput) ElementType() reflect.Type { + return reflect.TypeOf((*EnvironmentDeletionProtectionCheck)(nil)).Elem() +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToEnvironmentDeletionProtectionCheckOutput() EnvironmentDeletionProtectionCheckOutput { + return o +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToEnvironmentDeletionProtectionCheckOutputWithContext(ctx context.Context) EnvironmentDeletionProtectionCheckOutput { + return o +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToEnvironmentDeletionProtectionCheckPtrOutput() EnvironmentDeletionProtectionCheckPtrOutput { + return o.ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(context.Background()) +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) EnvironmentDeletionProtectionCheckPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v EnvironmentDeletionProtectionCheck) *EnvironmentDeletionProtectionCheck { + return &v + }).(EnvironmentDeletionProtectionCheckPtrOutput) +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e EnvironmentDeletionProtectionCheck) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o EnvironmentDeletionProtectionCheckOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e EnvironmentDeletionProtectionCheck) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type EnvironmentDeletionProtectionCheckPtrOutput struct{ *pulumi.OutputState } + +func (EnvironmentDeletionProtectionCheckPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**EnvironmentDeletionProtectionCheck)(nil)).Elem() +} + +func (o EnvironmentDeletionProtectionCheckPtrOutput) ToEnvironmentDeletionProtectionCheckPtrOutput() EnvironmentDeletionProtectionCheckPtrOutput { + return o +} + +func (o EnvironmentDeletionProtectionCheckPtrOutput) ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) EnvironmentDeletionProtectionCheckPtrOutput { + return o +} + +func (o EnvironmentDeletionProtectionCheckPtrOutput) Elem() EnvironmentDeletionProtectionCheckOutput { + return o.ApplyT(func(v *EnvironmentDeletionProtectionCheck) EnvironmentDeletionProtectionCheck { + if v != nil { + return *v + } + var ret EnvironmentDeletionProtectionCheck + return ret + }).(EnvironmentDeletionProtectionCheckOutput) +} + +func (o EnvironmentDeletionProtectionCheckPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o EnvironmentDeletionProtectionCheckPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *EnvironmentDeletionProtectionCheck) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// EnvironmentDeletionProtectionCheckInput is an input type that accepts values of the EnvironmentDeletionProtectionCheck enum +// A concrete instance of `EnvironmentDeletionProtectionCheckInput` can be one of the following: +// +// EnvironmentDeletionProtectionCheckAccountDefault +// EnvironmentDeletionProtectionCheckApply +// EnvironmentDeletionProtectionCheckBypass +type EnvironmentDeletionProtectionCheckInput interface { + pulumi.Input + + ToEnvironmentDeletionProtectionCheckOutput() EnvironmentDeletionProtectionCheckOutput + ToEnvironmentDeletionProtectionCheckOutputWithContext(context.Context) EnvironmentDeletionProtectionCheckOutput +} + +var environmentDeletionProtectionCheckPtrType = reflect.TypeOf((**EnvironmentDeletionProtectionCheck)(nil)).Elem() + +type EnvironmentDeletionProtectionCheckPtrInput interface { + pulumi.Input + + ToEnvironmentDeletionProtectionCheckPtrOutput() EnvironmentDeletionProtectionCheckPtrOutput + ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(context.Context) EnvironmentDeletionProtectionCheckPtrOutput +} + +type environmentDeletionProtectionCheckPtr string + +func EnvironmentDeletionProtectionCheckPtr(v string) EnvironmentDeletionProtectionCheckPtrInput { + return (*environmentDeletionProtectionCheckPtr)(&v) +} + +func (*environmentDeletionProtectionCheckPtr) ElementType() reflect.Type { + return environmentDeletionProtectionCheckPtrType +} + +func (in *environmentDeletionProtectionCheckPtr) ToEnvironmentDeletionProtectionCheckPtrOutput() EnvironmentDeletionProtectionCheckPtrOutput { + return pulumi.ToOutput(in).(EnvironmentDeletionProtectionCheckPtrOutput) +} + +func (in *environmentDeletionProtectionCheckPtr) ToEnvironmentDeletionProtectionCheckPtrOutputWithContext(ctx context.Context) EnvironmentDeletionProtectionCheckPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(EnvironmentDeletionProtectionCheckPtrOutput) +} + func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationProfileDeletionProtectionCheckInput)(nil)).Elem(), ConfigurationProfileDeletionProtectionCheck("ACCOUNT_DEFAULT")) + pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationProfileDeletionProtectionCheckPtrInput)(nil)).Elem(), ConfigurationProfileDeletionProtectionCheck("ACCOUNT_DEFAULT")) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentStrategyGrowthTypeInput)(nil)).Elem(), DeploymentStrategyGrowthType("EXPONENTIAL")) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentStrategyGrowthTypePtrInput)(nil)).Elem(), DeploymentStrategyGrowthType("EXPONENTIAL")) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentStrategyReplicateToInput)(nil)).Elem(), DeploymentStrategyReplicateTo("NONE")) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentStrategyReplicateToPtrInput)(nil)).Elem(), DeploymentStrategyReplicateTo("NONE")) + pulumi.RegisterInputType(reflect.TypeOf((*EnvironmentDeletionProtectionCheckInput)(nil)).Elem(), EnvironmentDeletionProtectionCheck("ACCOUNT_DEFAULT")) + pulumi.RegisterInputType(reflect.TypeOf((*EnvironmentDeletionProtectionCheckPtrInput)(nil)).Elem(), EnvironmentDeletionProtectionCheck("ACCOUNT_DEFAULT")) + pulumi.RegisterOutputType(ConfigurationProfileDeletionProtectionCheckOutput{}) + pulumi.RegisterOutputType(ConfigurationProfileDeletionProtectionCheckPtrOutput{}) pulumi.RegisterOutputType(DeploymentStrategyGrowthTypeOutput{}) pulumi.RegisterOutputType(DeploymentStrategyGrowthTypePtrOutput{}) pulumi.RegisterOutputType(DeploymentStrategyReplicateToOutput{}) pulumi.RegisterOutputType(DeploymentStrategyReplicateToPtrOutput{}) + pulumi.RegisterOutputType(EnvironmentDeletionProtectionCheckOutput{}) + pulumi.RegisterOutputType(EnvironmentDeletionProtectionCheckPtrOutput{}) } diff --git a/sdk/go/aws/autoscaling/pulumiEnums.go b/sdk/go/aws/autoscaling/pulumiEnums.go index 27920f788e..c5de24df46 100644 --- a/sdk/go/aws/autoscaling/pulumiEnums.go +++ b/sdk/go/aws/autoscaling/pulumiEnums.go @@ -10,10 +10,9 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . -// -// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. -// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. +// If launches fail in an Availability Zone, the following strategies are available. The default is “balanced-best-effort“. +// - “balanced-only“ - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. +// - “balanced-best-effort“ - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. type AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy string const ( @@ -179,7 +178,7 @@ func (in *autoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrate return pulumi.ToOutputWithContext(ctx, in).(AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrOutput) } -// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . +// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select “Replace unhealthy“, instances that appear unhealthy will be replaced in all Availability Zones. If you select “Ignore unhealthy“, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. type AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior string const ( diff --git a/sdk/go/aws/autoscaling/pulumiTypes.go b/sdk/go/aws/autoscaling/pulumiTypes.go index 8531360d05..cb2a46020a 100644 --- a/sdk/go/aws/autoscaling/pulumiTypes.go +++ b/sdk/go/aws/autoscaling/pulumiTypes.go @@ -331,11 +331,11 @@ func (o AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) Min() pulumi. }).(pulumi.IntPtrOutput) } +// “AvailabilityZoneDistribution“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. type AutoScalingGroupAvailabilityZoneDistribution struct { - // If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - // - // - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - // - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + // If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + // + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + // + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. CapacityDistributionStrategy *AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy `pulumi:"capacityDistributionStrategy"` } @@ -350,11 +350,11 @@ type AutoScalingGroupAvailabilityZoneDistributionInput interface { ToAutoScalingGroupAvailabilityZoneDistributionOutputWithContext(context.Context) AutoScalingGroupAvailabilityZoneDistributionOutput } +// “AvailabilityZoneDistribution“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. type AutoScalingGroupAvailabilityZoneDistributionArgs struct { - // If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - // - // - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - // - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + // If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + // + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + // + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. CapacityDistributionStrategy AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrInput `pulumi:"capacityDistributionStrategy"` } @@ -411,6 +411,7 @@ func (i *autoScalingGroupAvailabilityZoneDistributionPtrType) ToAutoScalingGroup return pulumi.ToOutputWithContext(ctx, i).(AutoScalingGroupAvailabilityZoneDistributionPtrOutput) } +// “AvailabilityZoneDistribution“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. type AutoScalingGroupAvailabilityZoneDistributionOutput struct{ *pulumi.OutputState } func (AutoScalingGroupAvailabilityZoneDistributionOutput) ElementType() reflect.Type { @@ -435,10 +436,9 @@ func (o AutoScalingGroupAvailabilityZoneDistributionOutput) ToAutoScalingGroupAv }).(AutoScalingGroupAvailabilityZoneDistributionPtrOutput) } -// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . -// -// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. -// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. +// If launches fail in an Availability Zone, the following strategies are available. The default is “balanced-best-effort“. +// - “balanced-only“ - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. +// - “balanced-best-effort“ - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. func (o AutoScalingGroupAvailabilityZoneDistributionOutput) CapacityDistributionStrategy() AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrOutput { return o.ApplyT(func(v AutoScalingGroupAvailabilityZoneDistribution) *AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy { return v.CapacityDistributionStrategy @@ -469,10 +469,9 @@ func (o AutoScalingGroupAvailabilityZoneDistributionPtrOutput) Elem() AutoScalin }).(AutoScalingGroupAvailabilityZoneDistributionOutput) } -// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . -// -// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. -// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. +// If launches fail in an Availability Zone, the following strategies are available. The default is “balanced-best-effort“. +// - “balanced-only“ - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. +// - “balanced-best-effort“ - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. func (o AutoScalingGroupAvailabilityZoneDistributionPtrOutput) CapacityDistributionStrategy() AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrOutput { return o.ApplyT(func(v *AutoScalingGroupAvailabilityZoneDistribution) *AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy { if v == nil { @@ -482,10 +481,11 @@ func (o AutoScalingGroupAvailabilityZoneDistributionPtrOutput) CapacityDistribut }).(AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrOutput) } +// Describes an Availability Zone impairment policy. type AutoScalingGroupAvailabilityZoneImpairmentPolicy struct { - // Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + // Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. ImpairedZoneHealthCheckBehavior AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior `pulumi:"impairedZoneHealthCheckBehavior"` - // If `true` , enable zonal shift for your Auto Scaling group. + // If ``true``, enable zonal shift for your Auto Scaling group. ZonalShiftEnabled bool `pulumi:"zonalShiftEnabled"` } @@ -500,10 +500,11 @@ type AutoScalingGroupAvailabilityZoneImpairmentPolicyInput interface { ToAutoScalingGroupAvailabilityZoneImpairmentPolicyOutputWithContext(context.Context) AutoScalingGroupAvailabilityZoneImpairmentPolicyOutput } +// Describes an Availability Zone impairment policy. type AutoScalingGroupAvailabilityZoneImpairmentPolicyArgs struct { - // Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + // Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. ImpairedZoneHealthCheckBehavior AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehaviorInput `pulumi:"impairedZoneHealthCheckBehavior"` - // If `true` , enable zonal shift for your Auto Scaling group. + // If ``true``, enable zonal shift for your Auto Scaling group. ZonalShiftEnabled pulumi.BoolInput `pulumi:"zonalShiftEnabled"` } @@ -560,6 +561,7 @@ func (i *autoScalingGroupAvailabilityZoneImpairmentPolicyPtrType) ToAutoScalingG return pulumi.ToOutputWithContext(ctx, i).(AutoScalingGroupAvailabilityZoneImpairmentPolicyPtrOutput) } +// Describes an Availability Zone impairment policy. type AutoScalingGroupAvailabilityZoneImpairmentPolicyOutput struct{ *pulumi.OutputState } func (AutoScalingGroupAvailabilityZoneImpairmentPolicyOutput) ElementType() reflect.Type { @@ -584,14 +586,14 @@ func (o AutoScalingGroupAvailabilityZoneImpairmentPolicyOutput) ToAutoScalingGro }).(AutoScalingGroupAvailabilityZoneImpairmentPolicyPtrOutput) } -// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . +// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select “Replace unhealthy“, instances that appear unhealthy will be replaced in all Availability Zones. If you select “Ignore unhealthy“, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. func (o AutoScalingGroupAvailabilityZoneImpairmentPolicyOutput) ImpairedZoneHealthCheckBehavior() AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehaviorOutput { return o.ApplyT(func(v AutoScalingGroupAvailabilityZoneImpairmentPolicy) AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior { return v.ImpairedZoneHealthCheckBehavior }).(AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehaviorOutput) } -// If `true` , enable zonal shift for your Auto Scaling group. +// If “true“, enable zonal shift for your Auto Scaling group. func (o AutoScalingGroupAvailabilityZoneImpairmentPolicyOutput) ZonalShiftEnabled() pulumi.BoolOutput { return o.ApplyT(func(v AutoScalingGroupAvailabilityZoneImpairmentPolicy) bool { return v.ZonalShiftEnabled }).(pulumi.BoolOutput) } @@ -620,7 +622,7 @@ func (o AutoScalingGroupAvailabilityZoneImpairmentPolicyPtrOutput) Elem() AutoSc }).(AutoScalingGroupAvailabilityZoneImpairmentPolicyOutput) } -// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . +// Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select “Replace unhealthy“, instances that appear unhealthy will be replaced in all Availability Zones. If you select “Ignore unhealthy“, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. func (o AutoScalingGroupAvailabilityZoneImpairmentPolicyPtrOutput) ImpairedZoneHealthCheckBehavior() AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehaviorPtrOutput { return o.ApplyT(func(v *AutoScalingGroupAvailabilityZoneImpairmentPolicy) *AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior { if v == nil { @@ -630,7 +632,7 @@ func (o AutoScalingGroupAvailabilityZoneImpairmentPolicyPtrOutput) ImpairedZoneH }).(AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehaviorPtrOutput) } -// If `true` , enable zonal shift for your Auto Scaling group. +// If “true“, enable zonal shift for your Auto Scaling group. func (o AutoScalingGroupAvailabilityZoneImpairmentPolicyPtrOutput) ZonalShiftEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *AutoScalingGroupAvailabilityZoneImpairmentPolicy) *bool { if v == nil { diff --git a/sdk/go/aws/batch/getJobDefinition.go b/sdk/go/aws/batch/getJobDefinition.go index 2362a6914c..34da486b4b 100644 --- a/sdk/go/aws/batch/getJobDefinition.go +++ b/sdk/go/aws/batch/getJobDefinition.go @@ -23,7 +23,8 @@ func LookupJobDefinition(ctx *pulumi.Context, args *LookupJobDefinitionArgs, opt } type LookupJobDefinitionArgs struct { - Id string `pulumi:"id"` + // The name of the job definition. + JobDefinitionName string `pulumi:"jobDefinitionName"` } type LookupJobDefinitionResult struct { @@ -33,15 +34,12 @@ type LookupJobDefinitionResult struct { EcsProperties *JobDefinitionEcsProperties `pulumi:"ecsProperties"` // An object with properties that are specific to Amazon EKS-based jobs. When `eksProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `nodeProperties` . EksProperties *JobDefinitionEksProperties `pulumi:"eksProperties"` - Id *string `pulumi:"id"` // An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` . // // > If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead. NodeProperties *JobDefinitionNodeProperties `pulumi:"nodeProperties"` // Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Parameters interface{} `pulumi:"parameters"` + Parameters map[string]string `pulumi:"parameters"` // The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . PlatformCapabilities []string `pulumi:"platformCapabilities"` // Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the `FAILED` state. @@ -50,12 +48,10 @@ type LookupJobDefinitionResult struct { RetryStrategy *JobDefinitionRetryStrategy `pulumi:"retryStrategy"` // The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. SchedulingPriority *int `pulumi:"schedulingPriority"` - // The tags that are applied to the job definition. - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Tags interface{} `pulumi:"tags"` + // A key-value pair to associate with a resource. + Tags map[string]string `pulumi:"tags"` // The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. - Timeout *JobDefinitionTimeout `pulumi:"timeout"` + Timeout *JobDefinitionJobTimeout `pulumi:"timeout"` // The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . // // - If the value is `container` , then one of the following is required: `containerProperties` , `ecsProperties` , or `eksProperties` . @@ -75,7 +71,8 @@ func LookupJobDefinitionOutput(ctx *pulumi.Context, args LookupJobDefinitionOutp } type LookupJobDefinitionOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // The name of the job definition. + JobDefinitionName pulumi.StringInput `pulumi:"jobDefinitionName"` } func (LookupJobDefinitionOutputArgs) ElementType() reflect.Type { @@ -111,10 +108,6 @@ func (o LookupJobDefinitionResultOutput) EksProperties() JobDefinitionEksPropert return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionEksProperties { return v.EksProperties }).(JobDefinitionEksPropertiesPtrOutput) } -func (o LookupJobDefinitionResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - // An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` . // // > If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead. @@ -123,10 +116,8 @@ func (o LookupJobDefinitionResultOutput) NodeProperties() JobDefinitionNodePrope } // Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . -// -// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. -func (o LookupJobDefinitionResultOutput) Parameters() pulumi.AnyOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) interface{} { return v.Parameters }).(pulumi.AnyOutput) +func (o LookupJobDefinitionResultOutput) Parameters() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) map[string]string { return v.Parameters }).(pulumi.StringMapOutput) } // The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . @@ -149,16 +140,14 @@ func (o LookupJobDefinitionResultOutput) SchedulingPriority() pulumi.IntPtrOutpu return o.ApplyT(func(v LookupJobDefinitionResult) *int { return v.SchedulingPriority }).(pulumi.IntPtrOutput) } -// The tags that are applied to the job definition. -// -// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. -func (o LookupJobDefinitionResultOutput) Tags() pulumi.AnyOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) interface{} { return v.Tags }).(pulumi.AnyOutput) +// A key-value pair to associate with a resource. +func (o LookupJobDefinitionResultOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) } // The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. -func (o LookupJobDefinitionResultOutput) Timeout() JobDefinitionTimeoutPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionTimeout { return v.Timeout }).(JobDefinitionTimeoutPtrOutput) +func (o LookupJobDefinitionResultOutput) Timeout() JobDefinitionJobTimeoutPtrOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionJobTimeout { return v.Timeout }).(JobDefinitionJobTimeoutPtrOutput) } // The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . diff --git a/sdk/go/aws/batch/jobDefinition.go b/sdk/go/aws/batch/jobDefinition.go index cbb400c089..66dae4267b 100644 --- a/sdk/go/aws/batch/jobDefinition.go +++ b/sdk/go/aws/batch/jobDefinition.go @@ -16,7 +16,6 @@ import ( type JobDefinition struct { pulumi.CustomResourceState - AwsId pulumi.StringOutput `pulumi:"awsId"` // An object with properties specific to Amazon ECS-based jobs. When `containerProperties` is used in the job definition, it can't be used in addition to `eksProperties` , `ecsProperties` , or `nodeProperties` . ContainerProperties JobDefinitionContainerPropertiesPtrOutput `pulumi:"containerProperties"` // An object that contains the properties for the Amazon ECS resources of a job.When `ecsProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `eksProperties` , or `nodeProperties` . @@ -30,9 +29,7 @@ type JobDefinition struct { // > If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead. NodeProperties JobDefinitionNodePropertiesPtrOutput `pulumi:"nodeProperties"` // Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Parameters pulumi.AnyOutput `pulumi:"parameters"` + Parameters pulumi.StringMapOutput `pulumi:"parameters"` // The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . PlatformCapabilities pulumi.StringArrayOutput `pulumi:"platformCapabilities"` // Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the `FAILED` state. @@ -41,12 +38,10 @@ type JobDefinition struct { RetryStrategy JobDefinitionRetryStrategyPtrOutput `pulumi:"retryStrategy"` // The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. SchedulingPriority pulumi.IntPtrOutput `pulumi:"schedulingPriority"` - // The tags that are applied to the job definition. - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Tags pulumi.AnyOutput `pulumi:"tags"` + // A key-value pair to associate with a resource. + Tags pulumi.StringMapOutput `pulumi:"tags"` // The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. - Timeout JobDefinitionTimeoutPtrOutput `pulumi:"timeout"` + Timeout JobDefinitionJobTimeoutPtrOutput `pulumi:"timeout"` // The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . // // - If the value is `container` , then one of the following is required: `containerProperties` , `ecsProperties` , or `eksProperties` . @@ -116,9 +111,7 @@ type jobDefinitionArgs struct { // > If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead. NodeProperties *JobDefinitionNodeProperties `pulumi:"nodeProperties"` // Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Parameters interface{} `pulumi:"parameters"` + Parameters map[string]string `pulumi:"parameters"` // The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . PlatformCapabilities []string `pulumi:"platformCapabilities"` // Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the `FAILED` state. @@ -127,12 +120,10 @@ type jobDefinitionArgs struct { RetryStrategy *JobDefinitionRetryStrategy `pulumi:"retryStrategy"` // The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. SchedulingPriority *int `pulumi:"schedulingPriority"` - // The tags that are applied to the job definition. - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Tags interface{} `pulumi:"tags"` + // A key-value pair to associate with a resource. + Tags map[string]string `pulumi:"tags"` // The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. - Timeout *JobDefinitionTimeout `pulumi:"timeout"` + Timeout *JobDefinitionJobTimeout `pulumi:"timeout"` // The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . // // - If the value is `container` , then one of the following is required: `containerProperties` , `ecsProperties` , or `eksProperties` . @@ -157,9 +148,7 @@ type JobDefinitionArgs struct { // > If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead. NodeProperties JobDefinitionNodePropertiesPtrInput // Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Parameters pulumi.Input + Parameters pulumi.StringMapInput // The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . PlatformCapabilities pulumi.StringArrayInput // Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the `FAILED` state. @@ -168,12 +157,10 @@ type JobDefinitionArgs struct { RetryStrategy JobDefinitionRetryStrategyPtrInput // The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. SchedulingPriority pulumi.IntPtrInput - // The tags that are applied to the job definition. - // - // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - Tags pulumi.Input + // A key-value pair to associate with a resource. + Tags pulumi.StringMapInput // The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. - Timeout JobDefinitionTimeoutPtrInput + Timeout JobDefinitionJobTimeoutPtrInput // The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . // // - If the value is `container` , then one of the following is required: `containerProperties` , `ecsProperties` , or `eksProperties` . @@ -220,10 +207,6 @@ func (o JobDefinitionOutput) ToJobDefinitionOutputWithContext(ctx context.Contex return o } -func (o JobDefinitionOutput) AwsId() pulumi.StringOutput { - return o.ApplyT(func(v *JobDefinition) pulumi.StringOutput { return v.AwsId }).(pulumi.StringOutput) -} - // An object with properties specific to Amazon ECS-based jobs. When `containerProperties` is used in the job definition, it can't be used in addition to `eksProperties` , `ecsProperties` , or `nodeProperties` . func (o JobDefinitionOutput) ContainerProperties() JobDefinitionContainerPropertiesPtrOutput { return o.ApplyT(func(v *JobDefinition) JobDefinitionContainerPropertiesPtrOutput { return v.ContainerProperties }).(JobDefinitionContainerPropertiesPtrOutput) @@ -252,10 +235,8 @@ func (o JobDefinitionOutput) NodeProperties() JobDefinitionNodePropertiesPtrOutp } // Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . -// -// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. -func (o JobDefinitionOutput) Parameters() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinition) pulumi.AnyOutput { return v.Parameters }).(pulumi.AnyOutput) +func (o JobDefinitionOutput) Parameters() pulumi.StringMapOutput { + return o.ApplyT(func(v *JobDefinition) pulumi.StringMapOutput { return v.Parameters }).(pulumi.StringMapOutput) } // The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . @@ -278,16 +259,14 @@ func (o JobDefinitionOutput) SchedulingPriority() pulumi.IntPtrOutput { return o.ApplyT(func(v *JobDefinition) pulumi.IntPtrOutput { return v.SchedulingPriority }).(pulumi.IntPtrOutput) } -// The tags that are applied to the job definition. -// -// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. -func (o JobDefinitionOutput) Tags() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinition) pulumi.AnyOutput { return v.Tags }).(pulumi.AnyOutput) +// A key-value pair to associate with a resource. +func (o JobDefinitionOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *JobDefinition) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) } // The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. -func (o JobDefinitionOutput) Timeout() JobDefinitionTimeoutPtrOutput { - return o.ApplyT(func(v *JobDefinition) JobDefinitionTimeoutPtrOutput { return v.Timeout }).(JobDefinitionTimeoutPtrOutput) +func (o JobDefinitionOutput) Timeout() JobDefinitionJobTimeoutPtrOutput { + return o.ApplyT(func(v *JobDefinition) JobDefinitionJobTimeoutPtrOutput { return v.Timeout }).(JobDefinitionJobTimeoutPtrOutput) } // The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . diff --git a/sdk/go/aws/batch/pulumiTypes.go b/sdk/go/aws/batch/pulumiTypes.go index c198b2e217..cc24857a0e 100644 --- a/sdk/go/aws/batch/pulumiTypes.go +++ b/sdk/go/aws/batch/pulumiTypes.go @@ -1680,162 +1680,6 @@ func (o ComputeEnvironmentUpdatePolicyPtrOutput) TerminateJobsOnUpdate() pulumi. }).(pulumi.BoolPtrOutput) } -type JobDefinitionAuthorizationConfig struct { - // The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - AccessPointId *string `pulumi:"accessPointId"` - // Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - Iam *string `pulumi:"iam"` -} - -// JobDefinitionAuthorizationConfigInput is an input type that accepts JobDefinitionAuthorizationConfigArgs and JobDefinitionAuthorizationConfigOutput values. -// You can construct a concrete instance of `JobDefinitionAuthorizationConfigInput` via: -// -// JobDefinitionAuthorizationConfigArgs{...} -type JobDefinitionAuthorizationConfigInput interface { - pulumi.Input - - ToJobDefinitionAuthorizationConfigOutput() JobDefinitionAuthorizationConfigOutput - ToJobDefinitionAuthorizationConfigOutputWithContext(context.Context) JobDefinitionAuthorizationConfigOutput -} - -type JobDefinitionAuthorizationConfigArgs struct { - // The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - AccessPointId pulumi.StringPtrInput `pulumi:"accessPointId"` - // Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - Iam pulumi.StringPtrInput `pulumi:"iam"` -} - -func (JobDefinitionAuthorizationConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionAuthorizationConfig)(nil)).Elem() -} - -func (i JobDefinitionAuthorizationConfigArgs) ToJobDefinitionAuthorizationConfigOutput() JobDefinitionAuthorizationConfigOutput { - return i.ToJobDefinitionAuthorizationConfigOutputWithContext(context.Background()) -} - -func (i JobDefinitionAuthorizationConfigArgs) ToJobDefinitionAuthorizationConfigOutputWithContext(ctx context.Context) JobDefinitionAuthorizationConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionAuthorizationConfigOutput) -} - -func (i JobDefinitionAuthorizationConfigArgs) ToJobDefinitionAuthorizationConfigPtrOutput() JobDefinitionAuthorizationConfigPtrOutput { - return i.ToJobDefinitionAuthorizationConfigPtrOutputWithContext(context.Background()) -} - -func (i JobDefinitionAuthorizationConfigArgs) ToJobDefinitionAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionAuthorizationConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionAuthorizationConfigOutput).ToJobDefinitionAuthorizationConfigPtrOutputWithContext(ctx) -} - -// JobDefinitionAuthorizationConfigPtrInput is an input type that accepts JobDefinitionAuthorizationConfigArgs, JobDefinitionAuthorizationConfigPtr and JobDefinitionAuthorizationConfigPtrOutput values. -// You can construct a concrete instance of `JobDefinitionAuthorizationConfigPtrInput` via: -// -// JobDefinitionAuthorizationConfigArgs{...} -// -// or: -// -// nil -type JobDefinitionAuthorizationConfigPtrInput interface { - pulumi.Input - - ToJobDefinitionAuthorizationConfigPtrOutput() JobDefinitionAuthorizationConfigPtrOutput - ToJobDefinitionAuthorizationConfigPtrOutputWithContext(context.Context) JobDefinitionAuthorizationConfigPtrOutput -} - -type jobDefinitionAuthorizationConfigPtrType JobDefinitionAuthorizationConfigArgs - -func JobDefinitionAuthorizationConfigPtr(v *JobDefinitionAuthorizationConfigArgs) JobDefinitionAuthorizationConfigPtrInput { - return (*jobDefinitionAuthorizationConfigPtrType)(v) -} - -func (*jobDefinitionAuthorizationConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionAuthorizationConfig)(nil)).Elem() -} - -func (i *jobDefinitionAuthorizationConfigPtrType) ToJobDefinitionAuthorizationConfigPtrOutput() JobDefinitionAuthorizationConfigPtrOutput { - return i.ToJobDefinitionAuthorizationConfigPtrOutputWithContext(context.Background()) -} - -func (i *jobDefinitionAuthorizationConfigPtrType) ToJobDefinitionAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionAuthorizationConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionAuthorizationConfigPtrOutput) -} - -type JobDefinitionAuthorizationConfigOutput struct{ *pulumi.OutputState } - -func (JobDefinitionAuthorizationConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionAuthorizationConfig)(nil)).Elem() -} - -func (o JobDefinitionAuthorizationConfigOutput) ToJobDefinitionAuthorizationConfigOutput() JobDefinitionAuthorizationConfigOutput { - return o -} - -func (o JobDefinitionAuthorizationConfigOutput) ToJobDefinitionAuthorizationConfigOutputWithContext(ctx context.Context) JobDefinitionAuthorizationConfigOutput { - return o -} - -func (o JobDefinitionAuthorizationConfigOutput) ToJobDefinitionAuthorizationConfigPtrOutput() JobDefinitionAuthorizationConfigPtrOutput { - return o.ToJobDefinitionAuthorizationConfigPtrOutputWithContext(context.Background()) -} - -func (o JobDefinitionAuthorizationConfigOutput) ToJobDefinitionAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionAuthorizationConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionAuthorizationConfig) *JobDefinitionAuthorizationConfig { - return &v - }).(JobDefinitionAuthorizationConfigPtrOutput) -} - -// The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . -func (o JobDefinitionAuthorizationConfigOutput) AccessPointId() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionAuthorizationConfig) *string { return v.AccessPointId }).(pulumi.StringPtrOutput) -} - -// Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. -func (o JobDefinitionAuthorizationConfigOutput) Iam() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionAuthorizationConfig) *string { return v.Iam }).(pulumi.StringPtrOutput) -} - -type JobDefinitionAuthorizationConfigPtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionAuthorizationConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionAuthorizationConfig)(nil)).Elem() -} - -func (o JobDefinitionAuthorizationConfigPtrOutput) ToJobDefinitionAuthorizationConfigPtrOutput() JobDefinitionAuthorizationConfigPtrOutput { - return o -} - -func (o JobDefinitionAuthorizationConfigPtrOutput) ToJobDefinitionAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionAuthorizationConfigPtrOutput { - return o -} - -func (o JobDefinitionAuthorizationConfigPtrOutput) Elem() JobDefinitionAuthorizationConfigOutput { - return o.ApplyT(func(v *JobDefinitionAuthorizationConfig) JobDefinitionAuthorizationConfig { - if v != nil { - return *v - } - var ret JobDefinitionAuthorizationConfig - return ret - }).(JobDefinitionAuthorizationConfigOutput) -} - -// The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . -func (o JobDefinitionAuthorizationConfigPtrOutput) AccessPointId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionAuthorizationConfig) *string { - if v == nil { - return nil - } - return v.AccessPointId - }).(pulumi.StringPtrOutput) -} - -// Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. -func (o JobDefinitionAuthorizationConfigPtrOutput) Iam() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionAuthorizationConfig) *string { - if v == nil { - return nil - } - return v.Iam - }).(pulumi.StringPtrOutput) -} - type JobDefinitionContainerProperties struct { // The command that's passed to the container. This parameter maps to `Cmd` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `COMMAND` parameter to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . For more information, see [https://docs.docker.com/engine/reference/builder/#cmd](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/builder/#cmd) . Command []string `pulumi:"command"` @@ -1848,7 +1692,7 @@ type JobDefinitionContainerProperties struct { // The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see [AWS Batch execution IAM role](https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) in the *AWS Batch User Guide* . ExecutionRoleArn *string `pulumi:"executionRoleArn"` // The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. - FargatePlatformConfiguration *JobDefinitionFargatePlatformConfiguration `pulumi:"fargatePlatformConfiguration"` + FargatePlatformConfiguration *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties `pulumi:"fargatePlatformConfiguration"` // Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . // // > Docker image architecture must match the processor architecture of the compute resources that they're scheduled on. For example, ARM-based Docker images can only run on ARM-based compute resources. @@ -1859,10 +1703,6 @@ type JobDefinitionContainerProperties struct { // - Images in other repositories on Docker Hub are qualified with an organization name (for example, `amazon/amazon-ecs-agent` ). // - Images in other online repositories are qualified further by a domain name (for example, `quay.io/assemblyline/ubuntu` ). Image string `pulumi:"image"` - // The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - // - // > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - InstanceType *string `pulumi:"instanceType"` // The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . JobRoleArn *string `pulumi:"jobRoleArn"` // Linux-specific modifications that are applied to the container, such as details for device mappings. @@ -1880,7 +1720,7 @@ type JobDefinitionContainerProperties struct { // This parameter is deprecated, use `resourceRequirements` to specify the memory requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it specifies the memory hard limit (in MiB) for a container. If your container attempts to exceed the specified number, it's terminated. You must specify at least 4 MiB of memory for a job using this parameter. The memory hard limit can be specified in several places. It must be specified for each node at least once. Memory *int `pulumi:"memory"` // The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - MountPoints []JobDefinitionMountPoints `pulumi:"mountPoints"` + MountPoints []JobDefinitionMountPoint `pulumi:"mountPoints"` // The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. NetworkConfiguration *JobDefinitionNetworkConfiguration `pulumi:"networkConfiguration"` // When this parameter is true, the container is given elevated permissions on the host container instance (similar to the `root` user). This parameter maps to `Privileged` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--privileged` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The default value is false. @@ -1908,7 +1748,7 @@ type JobDefinitionContainerProperties struct { // Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to `CpuShares` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--cpu-shares` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The number of vCPUs must be specified but can be specified in several places. You must specify it at least once for each node. Vcpus *int `pulumi:"vcpus"` // A list of data volumes used in a job. - Volumes []JobDefinitionVolumes `pulumi:"volumes"` + Volumes []JobDefinitionVolume `pulumi:"volumes"` } // JobDefinitionContainerPropertiesInput is an input type that accepts JobDefinitionContainerPropertiesArgs and JobDefinitionContainerPropertiesOutput values. @@ -1934,7 +1774,7 @@ type JobDefinitionContainerPropertiesArgs struct { // The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see [AWS Batch execution IAM role](https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) in the *AWS Batch User Guide* . ExecutionRoleArn pulumi.StringPtrInput `pulumi:"executionRoleArn"` // The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. - FargatePlatformConfiguration JobDefinitionFargatePlatformConfigurationPtrInput `pulumi:"fargatePlatformConfiguration"` + FargatePlatformConfiguration JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput `pulumi:"fargatePlatformConfiguration"` // Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . // // > Docker image architecture must match the processor architecture of the compute resources that they're scheduled on. For example, ARM-based Docker images can only run on ARM-based compute resources. @@ -1945,10 +1785,6 @@ type JobDefinitionContainerPropertiesArgs struct { // - Images in other repositories on Docker Hub are qualified with an organization name (for example, `amazon/amazon-ecs-agent` ). // - Images in other online repositories are qualified further by a domain name (for example, `quay.io/assemblyline/ubuntu` ). Image pulumi.StringInput `pulumi:"image"` - // The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - // - // > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - InstanceType pulumi.StringPtrInput `pulumi:"instanceType"` // The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . JobRoleArn pulumi.StringPtrInput `pulumi:"jobRoleArn"` // Linux-specific modifications that are applied to the container, such as details for device mappings. @@ -1966,7 +1802,7 @@ type JobDefinitionContainerPropertiesArgs struct { // This parameter is deprecated, use `resourceRequirements` to specify the memory requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it specifies the memory hard limit (in MiB) for a container. If your container attempts to exceed the specified number, it's terminated. You must specify at least 4 MiB of memory for a job using this parameter. The memory hard limit can be specified in several places. It must be specified for each node at least once. Memory pulumi.IntPtrInput `pulumi:"memory"` // The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - MountPoints JobDefinitionMountPointsArrayInput `pulumi:"mountPoints"` + MountPoints JobDefinitionMountPointArrayInput `pulumi:"mountPoints"` // The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. NetworkConfiguration JobDefinitionNetworkConfigurationPtrInput `pulumi:"networkConfiguration"` // When this parameter is true, the container is given elevated permissions on the host container instance (similar to the `root` user). This parameter maps to `Privileged` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--privileged` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The default value is false. @@ -1994,7 +1830,7 @@ type JobDefinitionContainerPropertiesArgs struct { // Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to `CpuShares` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--cpu-shares` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The number of vCPUs must be specified but can be specified in several places. You must specify it at least once for each node. Vcpus pulumi.IntPtrInput `pulumi:"vcpus"` // A list of data volumes used in a job. - Volumes JobDefinitionVolumesArrayInput `pulumi:"volumes"` + Volumes JobDefinitionVolumeArrayInput `pulumi:"volumes"` } func (JobDefinitionContainerPropertiesArgs) ElementType() reflect.Type { @@ -2097,10 +1933,10 @@ func (o JobDefinitionContainerPropertiesOutput) ExecutionRoleArn() pulumi.String } // The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. -func (o JobDefinitionContainerPropertiesOutput) FargatePlatformConfiguration() JobDefinitionFargatePlatformConfigurationPtrOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionFargatePlatformConfiguration { +func (o JobDefinitionContainerPropertiesOutput) FargatePlatformConfiguration() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { return v.FargatePlatformConfiguration - }).(JobDefinitionFargatePlatformConfigurationPtrOutput) + }).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) } // Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . @@ -2116,13 +1952,6 @@ func (o JobDefinitionContainerPropertiesOutput) Image() pulumi.StringOutput { return o.ApplyT(func(v JobDefinitionContainerProperties) string { return v.Image }).(pulumi.StringOutput) } -// The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. -// -// > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. -func (o JobDefinitionContainerPropertiesOutput) InstanceType() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) *string { return v.InstanceType }).(pulumi.StringPtrOutput) -} - // The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . func (o JobDefinitionContainerPropertiesOutput) JobRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v JobDefinitionContainerProperties) *string { return v.JobRoleArn }).(pulumi.StringPtrOutput) @@ -2152,8 +1981,8 @@ func (o JobDefinitionContainerPropertiesOutput) Memory() pulumi.IntPtrOutput { } // The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . -func (o JobDefinitionContainerPropertiesOutput) MountPoints() JobDefinitionMountPointsArrayOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) []JobDefinitionMountPoints { return v.MountPoints }).(JobDefinitionMountPointsArrayOutput) +func (o JobDefinitionContainerPropertiesOutput) MountPoints() JobDefinitionMountPointArrayOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) []JobDefinitionMountPoint { return v.MountPoints }).(JobDefinitionMountPointArrayOutput) } // The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. @@ -2219,8 +2048,8 @@ func (o JobDefinitionContainerPropertiesOutput) Vcpus() pulumi.IntPtrOutput { } // A list of data volumes used in a job. -func (o JobDefinitionContainerPropertiesOutput) Volumes() JobDefinitionVolumesArrayOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) []JobDefinitionVolumes { return v.Volumes }).(JobDefinitionVolumesArrayOutput) +func (o JobDefinitionContainerPropertiesOutput) Volumes() JobDefinitionVolumeArrayOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) []JobDefinitionVolume { return v.Volumes }).(JobDefinitionVolumeArrayOutput) } type JobDefinitionContainerPropertiesPtrOutput struct{ *pulumi.OutputState } @@ -2290,13 +2119,13 @@ func (o JobDefinitionContainerPropertiesPtrOutput) ExecutionRoleArn() pulumi.Str } // The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. -func (o JobDefinitionContainerPropertiesPtrOutput) FargatePlatformConfiguration() JobDefinitionFargatePlatformConfigurationPtrOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionFargatePlatformConfiguration { +func (o JobDefinitionContainerPropertiesPtrOutput) FargatePlatformConfiguration() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { if v == nil { return nil } return v.FargatePlatformConfiguration - }).(JobDefinitionFargatePlatformConfigurationPtrOutput) + }).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) } // Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . @@ -2317,18 +2146,6 @@ func (o JobDefinitionContainerPropertiesPtrOutput) Image() pulumi.StringPtrOutpu }).(pulumi.StringPtrOutput) } -// The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. -// -// > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. -func (o JobDefinitionContainerPropertiesPtrOutput) InstanceType() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) *string { - if v == nil { - return nil - } - return v.InstanceType - }).(pulumi.StringPtrOutput) -} - // The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . func (o JobDefinitionContainerPropertiesPtrOutput) JobRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *JobDefinitionContainerProperties) *string { @@ -2378,13 +2195,13 @@ func (o JobDefinitionContainerPropertiesPtrOutput) Memory() pulumi.IntPtrOutput } // The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . -func (o JobDefinitionContainerPropertiesPtrOutput) MountPoints() JobDefinitionMountPointsArrayOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) []JobDefinitionMountPoints { +func (o JobDefinitionContainerPropertiesPtrOutput) MountPoints() JobDefinitionMountPointArrayOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) []JobDefinitionMountPoint { if v == nil { return nil } return v.MountPoints - }).(JobDefinitionMountPointsArrayOutput) + }).(JobDefinitionMountPointArrayOutput) } // The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. @@ -2494,13 +2311,151 @@ func (o JobDefinitionContainerPropertiesPtrOutput) Vcpus() pulumi.IntPtrOutput { } // A list of data volumes used in a job. -func (o JobDefinitionContainerPropertiesPtrOutput) Volumes() JobDefinitionVolumesArrayOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) []JobDefinitionVolumes { +func (o JobDefinitionContainerPropertiesPtrOutput) Volumes() JobDefinitionVolumeArrayOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) []JobDefinitionVolume { if v == nil { return nil } return v.Volumes - }).(JobDefinitionVolumesArrayOutput) + }).(JobDefinitionVolumeArrayOutput) +} + +// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. +type JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties struct { + PlatformVersion *string `pulumi:"platformVersion"` +} + +// JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesInput is an input type that accepts JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs and JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesInput` via: +// +// JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{...} +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesInput interface { + pulumi.Input + + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput +} + +// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs struct { + PlatformVersion pulumi.StringPtrInput `pulumi:"platformVersion"` +} + +func (JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() +} + +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(context.Background()) +} + +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) +} + +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput).ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx) +} + +// JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput is an input type that accepts JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs, JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtr and JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput` via: +// +// JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{...} +// +// or: +// +// nil +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput interface { + pulumi.Input + + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput +} + +type jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs + +func JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtr(v *JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput { + return (*jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType)(v) +} + +func (*jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() +} + +func (i *jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) +} + +// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput struct{ *pulumi.OutputState } + +func (JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return o +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return o +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { + return &v + }).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) PlatformVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) *string { + return v.PlatformVersion + }).(pulumi.StringPtrOutput) +} + +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) Elem() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { + if v != nil { + return *v + } + var ret JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties + return ret + }).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) +} + +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) PlatformVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) *string { + if v == nil { + return nil + } + return v.PlatformVersion + }).(pulumi.StringPtrOutput) } type JobDefinitionDevice struct { @@ -2799,7 +2754,7 @@ type JobDefinitionEcsTaskProperties struct { // > This is object is comparable to [ContainerProperties:jobRoleArn](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html) . TaskRoleArn *string `pulumi:"taskRoleArn"` // A list of volumes that are associated with the job. - Volumes []JobDefinitionVolumes `pulumi:"volumes"` + Volumes []JobDefinitionVolume `pulumi:"volumes"` } // JobDefinitionEcsTaskPropertiesInput is an input type that accepts JobDefinitionEcsTaskPropertiesArgs and JobDefinitionEcsTaskPropertiesOutput values. @@ -2849,7 +2804,7 @@ type JobDefinitionEcsTaskPropertiesArgs struct { // > This is object is comparable to [ContainerProperties:jobRoleArn](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html) . TaskRoleArn pulumi.StringPtrInput `pulumi:"taskRoleArn"` // A list of volumes that are associated with the job. - Volumes JobDefinitionVolumesArrayInput `pulumi:"volumes"` + Volumes JobDefinitionVolumeArrayInput `pulumi:"volumes"` } func (JobDefinitionEcsTaskPropertiesArgs) ElementType() reflect.Type { @@ -2967,8 +2922,8 @@ func (o JobDefinitionEcsTaskPropertiesOutput) TaskRoleArn() pulumi.StringPtrOutp } // A list of volumes that are associated with the job. -func (o JobDefinitionEcsTaskPropertiesOutput) Volumes() JobDefinitionVolumesArrayOutput { - return o.ApplyT(func(v JobDefinitionEcsTaskProperties) []JobDefinitionVolumes { return v.Volumes }).(JobDefinitionVolumesArrayOutput) +func (o JobDefinitionEcsTaskPropertiesOutput) Volumes() JobDefinitionVolumeArrayOutput { + return o.ApplyT(func(v JobDefinitionEcsTaskProperties) []JobDefinitionVolume { return v.Volumes }).(JobDefinitionVolumeArrayOutput) } type JobDefinitionEcsTaskPropertiesArrayOutput struct{ *pulumi.OutputState } @@ -2991,101 +2946,257 @@ func (o JobDefinitionEcsTaskPropertiesArrayOutput) Index(i pulumi.IntInput) JobD }).(JobDefinitionEcsTaskPropertiesOutput) } -type JobDefinitionEfsVolumeConfiguration struct { - // The authorization configuration details for the Amazon EFS file system. - AuthorizationConfig *JobDefinitionAuthorizationConfig `pulumi:"authorizationConfig"` - // The Amazon EFS file system ID to use. - FileSystemId string `pulumi:"fileSystemId"` - // The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying `/` has the same effect as omitting this parameter. The maximum length is 4,096 characters. - // - // > If an EFS access point is specified in the `authorizationConfig` , the root directory parameter must either be omitted or set to `/` , which enforces the path set on the Amazon EFS access point. - RootDirectory *string `pulumi:"rootDirectory"` - // Determines whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Encrypting data in transit](https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html) in the *Amazon Elastic File System User Guide* . - TransitEncryption *string `pulumi:"transitEncryption"` - // The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server. If you don't specify a transit encryption port, it uses the port selection strategy that the Amazon EFS mount helper uses. The value must be between 0 and 65,535. For more information, see [EFS mount helper](https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html) in the *Amazon Elastic File System User Guide* . - TransitEncryptionPort *int `pulumi:"transitEncryptionPort"` +type JobDefinitionEfsAuthorizationConfig struct { + // The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + AccessPointId *string `pulumi:"accessPointId"` + // Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + Iam *string `pulumi:"iam"` } -// JobDefinitionEfsVolumeConfigurationInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs and JobDefinitionEfsVolumeConfigurationOutput values. -// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationInput` via: +// JobDefinitionEfsAuthorizationConfigInput is an input type that accepts JobDefinitionEfsAuthorizationConfigArgs and JobDefinitionEfsAuthorizationConfigOutput values. +// You can construct a concrete instance of `JobDefinitionEfsAuthorizationConfigInput` via: // -// JobDefinitionEfsVolumeConfigurationArgs{...} -type JobDefinitionEfsVolumeConfigurationInput interface { +// JobDefinitionEfsAuthorizationConfigArgs{...} +type JobDefinitionEfsAuthorizationConfigInput interface { pulumi.Input - ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput - ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationOutput + ToJobDefinitionEfsAuthorizationConfigOutput() JobDefinitionEfsAuthorizationConfigOutput + ToJobDefinitionEfsAuthorizationConfigOutputWithContext(context.Context) JobDefinitionEfsAuthorizationConfigOutput } -type JobDefinitionEfsVolumeConfigurationArgs struct { - // The authorization configuration details for the Amazon EFS file system. - AuthorizationConfig JobDefinitionAuthorizationConfigPtrInput `pulumi:"authorizationConfig"` - // The Amazon EFS file system ID to use. - FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` - // The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying `/` has the same effect as omitting this parameter. The maximum length is 4,096 characters. - // - // > If an EFS access point is specified in the `authorizationConfig` , the root directory parameter must either be omitted or set to `/` , which enforces the path set on the Amazon EFS access point. - RootDirectory pulumi.StringPtrInput `pulumi:"rootDirectory"` - // Determines whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Encrypting data in transit](https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html) in the *Amazon Elastic File System User Guide* . - TransitEncryption pulumi.StringPtrInput `pulumi:"transitEncryption"` - // The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server. If you don't specify a transit encryption port, it uses the port selection strategy that the Amazon EFS mount helper uses. The value must be between 0 and 65,535. For more information, see [EFS mount helper](https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html) in the *Amazon Elastic File System User Guide* . - TransitEncryptionPort pulumi.IntPtrInput `pulumi:"transitEncryptionPort"` +type JobDefinitionEfsAuthorizationConfigArgs struct { + // The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + AccessPointId pulumi.StringPtrInput `pulumi:"accessPointId"` + // Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + Iam pulumi.StringPtrInput `pulumi:"iam"` } -func (JobDefinitionEfsVolumeConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +func (JobDefinitionEfsAuthorizationConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEfsAuthorizationConfig)(nil)).Elem() } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput { - return i.ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Background()) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigOutput() JobDefinitionEfsAuthorizationConfigOutput { + return i.ToJobDefinitionEfsAuthorizationConfigOutputWithContext(context.Background()) } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsAuthorizationConfigOutput) } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { - return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { + return i.ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput).ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsAuthorizationConfigOutput).ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx) } -// JobDefinitionEfsVolumeConfigurationPtrInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs, JobDefinitionEfsVolumeConfigurationPtr and JobDefinitionEfsVolumeConfigurationPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationPtrInput` via: +// JobDefinitionEfsAuthorizationConfigPtrInput is an input type that accepts JobDefinitionEfsAuthorizationConfigArgs, JobDefinitionEfsAuthorizationConfigPtr and JobDefinitionEfsAuthorizationConfigPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEfsAuthorizationConfigPtrInput` via: // -// JobDefinitionEfsVolumeConfigurationArgs{...} +// JobDefinitionEfsAuthorizationConfigArgs{...} // // or: // // nil -type JobDefinitionEfsVolumeConfigurationPtrInput interface { +type JobDefinitionEfsAuthorizationConfigPtrInput interface { pulumi.Input - ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput - ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput + ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput + ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput } -type jobDefinitionEfsVolumeConfigurationPtrType JobDefinitionEfsVolumeConfigurationArgs +type jobDefinitionEfsAuthorizationConfigPtrType JobDefinitionEfsAuthorizationConfigArgs -func JobDefinitionEfsVolumeConfigurationPtr(v *JobDefinitionEfsVolumeConfigurationArgs) JobDefinitionEfsVolumeConfigurationPtrInput { - return (*jobDefinitionEfsVolumeConfigurationPtrType)(v) +func JobDefinitionEfsAuthorizationConfigPtr(v *JobDefinitionEfsAuthorizationConfigArgs) JobDefinitionEfsAuthorizationConfigPtrInput { + return (*jobDefinitionEfsAuthorizationConfigPtrType)(v) } -func (*jobDefinitionEfsVolumeConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +func (*jobDefinitionEfsAuthorizationConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEfsAuthorizationConfig)(nil)).Elem() } -func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { - return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) +func (i *jobDefinitionEfsAuthorizationConfigPtrType) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { + return i.ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationPtrOutput) +func (i *jobDefinitionEfsAuthorizationConfigPtrType) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsAuthorizationConfigPtrOutput) } -type JobDefinitionEfsVolumeConfigurationOutput struct{ *pulumi.OutputState } +type JobDefinitionEfsAuthorizationConfigOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEfsAuthorizationConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEfsAuthorizationConfig)(nil)).Elem() +} + +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigOutput() JobDefinitionEfsAuthorizationConfigOutput { + return o +} + +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigOutput { + return o +} + +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEfsAuthorizationConfig) *JobDefinitionEfsAuthorizationConfig { + return &v + }).(JobDefinitionEfsAuthorizationConfigPtrOutput) +} + +// The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . +func (o JobDefinitionEfsAuthorizationConfigOutput) AccessPointId() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsAuthorizationConfig) *string { return v.AccessPointId }).(pulumi.StringPtrOutput) +} + +// Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. +func (o JobDefinitionEfsAuthorizationConfigOutput) Iam() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsAuthorizationConfig) *string { return v.Iam }).(pulumi.StringPtrOutput) +} + +type JobDefinitionEfsAuthorizationConfigPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEfsAuthorizationConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEfsAuthorizationConfig)(nil)).Elem() +} + +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { + return o +} + +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { + return o +} + +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) Elem() JobDefinitionEfsAuthorizationConfigOutput { + return o.ApplyT(func(v *JobDefinitionEfsAuthorizationConfig) JobDefinitionEfsAuthorizationConfig { + if v != nil { + return *v + } + var ret JobDefinitionEfsAuthorizationConfig + return ret + }).(JobDefinitionEfsAuthorizationConfigOutput) +} + +// The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) AccessPointId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsAuthorizationConfig) *string { + if v == nil { + return nil + } + return v.AccessPointId + }).(pulumi.StringPtrOutput) +} + +// Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) Iam() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsAuthorizationConfig) *string { + if v == nil { + return nil + } + return v.Iam + }).(pulumi.StringPtrOutput) +} + +type JobDefinitionEfsVolumeConfiguration struct { + // The authorization configuration details for the Amazon EFS file system. + AuthorizationConfig *JobDefinitionEfsAuthorizationConfig `pulumi:"authorizationConfig"` + // The Amazon EFS file system ID to use. + FileSystemId string `pulumi:"fileSystemId"` + // The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying `/` has the same effect as omitting this parameter. The maximum length is 4,096 characters. + // + // > If an EFS access point is specified in the `authorizationConfig` , the root directory parameter must either be omitted or set to `/` , which enforces the path set on the Amazon EFS access point. + RootDirectory *string `pulumi:"rootDirectory"` + // Determines whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Encrypting data in transit](https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html) in the *Amazon Elastic File System User Guide* . + TransitEncryption *string `pulumi:"transitEncryption"` + // The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server. If you don't specify a transit encryption port, it uses the port selection strategy that the Amazon EFS mount helper uses. The value must be between 0 and 65,535. For more information, see [EFS mount helper](https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html) in the *Amazon Elastic File System User Guide* . + TransitEncryptionPort *int `pulumi:"transitEncryptionPort"` +} + +// JobDefinitionEfsVolumeConfigurationInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs and JobDefinitionEfsVolumeConfigurationOutput values. +// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationInput` via: +// +// JobDefinitionEfsVolumeConfigurationArgs{...} +type JobDefinitionEfsVolumeConfigurationInput interface { + pulumi.Input + + ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput + ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationOutput +} + +type JobDefinitionEfsVolumeConfigurationArgs struct { + // The authorization configuration details for the Amazon EFS file system. + AuthorizationConfig JobDefinitionEfsAuthorizationConfigPtrInput `pulumi:"authorizationConfig"` + // The Amazon EFS file system ID to use. + FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` + // The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying `/` has the same effect as omitting this parameter. The maximum length is 4,096 characters. + // + // > If an EFS access point is specified in the `authorizationConfig` , the root directory parameter must either be omitted or set to `/` , which enforces the path set on the Amazon EFS access point. + RootDirectory pulumi.StringPtrInput `pulumi:"rootDirectory"` + // Determines whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Encrypting data in transit](https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html) in the *Amazon Elastic File System User Guide* . + TransitEncryption pulumi.StringPtrInput `pulumi:"transitEncryption"` + // The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server. If you don't specify a transit encryption port, it uses the port selection strategy that the Amazon EFS mount helper uses. The value must be between 0 and 65,535. For more information, see [EFS mount helper](https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html) in the *Amazon Elastic File System User Guide* . + TransitEncryptionPort pulumi.IntPtrInput `pulumi:"transitEncryptionPort"` +} + +func (JobDefinitionEfsVolumeConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +} + +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput { + return i.ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Background()) +} + +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput) +} + +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { + return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput).ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx) +} + +// JobDefinitionEfsVolumeConfigurationPtrInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs, JobDefinitionEfsVolumeConfigurationPtr and JobDefinitionEfsVolumeConfigurationPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationPtrInput` via: +// +// JobDefinitionEfsVolumeConfigurationArgs{...} +// +// or: +// +// nil +type JobDefinitionEfsVolumeConfigurationPtrInput interface { + pulumi.Input + + ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput + ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput +} + +type jobDefinitionEfsVolumeConfigurationPtrType JobDefinitionEfsVolumeConfigurationArgs + +func JobDefinitionEfsVolumeConfigurationPtr(v *JobDefinitionEfsVolumeConfigurationArgs) JobDefinitionEfsVolumeConfigurationPtrInput { + return (*jobDefinitionEfsVolumeConfigurationPtrType)(v) +} + +func (*jobDefinitionEfsVolumeConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +} + +func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { + return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationPtrOutput) +} + +type JobDefinitionEfsVolumeConfigurationOutput struct{ *pulumi.OutputState } func (JobDefinitionEfsVolumeConfigurationOutput) ElementType() reflect.Type { return reflect.TypeOf((*JobDefinitionEfsVolumeConfiguration)(nil)).Elem() @@ -3110,10 +3221,10 @@ func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfi } // The authorization configuration details for the Amazon EFS file system. -func (o JobDefinitionEfsVolumeConfigurationOutput) AuthorizationConfig() JobDefinitionAuthorizationConfigPtrOutput { - return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *JobDefinitionAuthorizationConfig { +func (o JobDefinitionEfsVolumeConfigurationOutput) AuthorizationConfig() JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *JobDefinitionEfsAuthorizationConfig { return v.AuthorizationConfig - }).(JobDefinitionAuthorizationConfigPtrOutput) + }).(JobDefinitionEfsAuthorizationConfigPtrOutput) } // The Amazon EFS file system ID to use. @@ -3163,13 +3274,13 @@ func (o JobDefinitionEfsVolumeConfigurationPtrOutput) Elem() JobDefinitionEfsVol } // The authorization configuration details for the Amazon EFS file system. -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) AuthorizationConfig() JobDefinitionAuthorizationConfigPtrOutput { - return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *JobDefinitionAuthorizationConfig { +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) AuthorizationConfig() JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *JobDefinitionEfsAuthorizationConfig { if v == nil { return nil } return v.AuthorizationConfig - }).(JobDefinitionAuthorizationConfigPtrOutput) + }).(JobDefinitionEfsAuthorizationConfigPtrOutput) } // The Amazon EFS file system ID to use. @@ -3515,7 +3626,7 @@ type JobDefinitionEksContainerResourceRequirements struct { // > To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . - Limits interface{} `pulumi:"limits"` + Limits map[string]string `pulumi:"limits"` // The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. // // - **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a "Mi" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . @@ -3523,7 +3634,7 @@ type JobDefinitionEksContainerResourceRequirements struct { // > If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . - Requests interface{} `pulumi:"requests"` + Requests map[string]string `pulumi:"requests"` } // JobDefinitionEksContainerResourceRequirementsInput is an input type that accepts JobDefinitionEksContainerResourceRequirementsArgs and JobDefinitionEksContainerResourceRequirementsOutput values. @@ -3545,7 +3656,7 @@ type JobDefinitionEksContainerResourceRequirementsArgs struct { // > To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . - Limits pulumi.Input `pulumi:"limits"` + Limits pulumi.StringMapInput `pulumi:"limits"` // The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. // // - **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a "Mi" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . @@ -3553,7 +3664,7 @@ type JobDefinitionEksContainerResourceRequirementsArgs struct { // > If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . - Requests pulumi.Input `pulumi:"requests"` + Requests pulumi.StringMapInput `pulumi:"requests"` } func (JobDefinitionEksContainerResourceRequirementsArgs) ElementType() reflect.Type { @@ -3640,8 +3751,8 @@ func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksC // > To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . -func (o JobDefinitionEksContainerResourceRequirementsOutput) Limits() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) interface{} { return v.Limits }).(pulumi.AnyOutput) +func (o JobDefinitionEksContainerResourceRequirementsOutput) Limits() pulumi.StringMapOutput { + return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) map[string]string { return v.Limits }).(pulumi.StringMapOutput) } // The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. @@ -3651,8 +3762,8 @@ func (o JobDefinitionEksContainerResourceRequirementsOutput) Limits() pulumi.Any // > If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . -func (o JobDefinitionEksContainerResourceRequirementsOutput) Requests() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) interface{} { return v.Requests }).(pulumi.AnyOutput) +func (o JobDefinitionEksContainerResourceRequirementsOutput) Requests() pulumi.StringMapOutput { + return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) map[string]string { return v.Requests }).(pulumi.StringMapOutput) } type JobDefinitionEksContainerResourceRequirementsPtrOutput struct{ *pulumi.OutputState } @@ -3686,13 +3797,13 @@ func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Elem() JobDefini // > To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Limits() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) interface{} { +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Limits() pulumi.StringMapOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) map[string]string { if v == nil { return nil } return v.Limits - }).(pulumi.AnyOutput) + }).(pulumi.StringMapOutput) } // The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. @@ -3702,13 +3813,13 @@ func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Limits() pulumi. // > If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . // - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . // - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Requests() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) interface{} { +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Requests() pulumi.StringMapOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) map[string]string { if v == nil { return nil } return v.Requests - }).(pulumi.AnyOutput) + }).(pulumi.StringMapOutput) } type JobDefinitionEksContainerSecurityContext struct { @@ -4363,936 +4474,1402 @@ func (o JobDefinitionEksHostPathPtrOutput) Path() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -type JobDefinitionEksProperties struct { - // The properties for the Kubernetes pod resources of a job. - PodProperties *JobDefinitionPodProperties `pulumi:"podProperties"` +type JobDefinitionEksMetadata struct { + // Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. + Labels map[string]string `pulumi:"labels"` } -// JobDefinitionEksPropertiesInput is an input type that accepts JobDefinitionEksPropertiesArgs and JobDefinitionEksPropertiesOutput values. -// You can construct a concrete instance of `JobDefinitionEksPropertiesInput` via: +// JobDefinitionEksMetadataInput is an input type that accepts JobDefinitionEksMetadataArgs and JobDefinitionEksMetadataOutput values. +// You can construct a concrete instance of `JobDefinitionEksMetadataInput` via: // -// JobDefinitionEksPropertiesArgs{...} -type JobDefinitionEksPropertiesInput interface { +// JobDefinitionEksMetadataArgs{...} +type JobDefinitionEksMetadataInput interface { pulumi.Input - ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput - ToJobDefinitionEksPropertiesOutputWithContext(context.Context) JobDefinitionEksPropertiesOutput + ToJobDefinitionEksMetadataOutput() JobDefinitionEksMetadataOutput + ToJobDefinitionEksMetadataOutputWithContext(context.Context) JobDefinitionEksMetadataOutput } -type JobDefinitionEksPropertiesArgs struct { - // The properties for the Kubernetes pod resources of a job. - PodProperties JobDefinitionPodPropertiesPtrInput `pulumi:"podProperties"` +type JobDefinitionEksMetadataArgs struct { + // Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. + Labels pulumi.StringMapInput `pulumi:"labels"` } -func (JobDefinitionEksPropertiesArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() +func (JobDefinitionEksMetadataArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksMetadata)(nil)).Elem() } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { - return i.ToJobDefinitionEksPropertiesOutputWithContext(context.Background()) +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataOutput() JobDefinitionEksMetadataOutput { + return i.ToJobDefinitionEksMetadataOutputWithContext(context.Background()) } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput) +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataOutputWithContext(ctx context.Context) JobDefinitionEksMetadataOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksMetadataOutput) } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { - return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { + return i.ToJobDefinitionEksMetadataPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput).ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx) +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksMetadataOutput).ToJobDefinitionEksMetadataPtrOutputWithContext(ctx) } -// JobDefinitionEksPropertiesPtrInput is an input type that accepts JobDefinitionEksPropertiesArgs, JobDefinitionEksPropertiesPtr and JobDefinitionEksPropertiesPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksPropertiesPtrInput` via: +// JobDefinitionEksMetadataPtrInput is an input type that accepts JobDefinitionEksMetadataArgs, JobDefinitionEksMetadataPtr and JobDefinitionEksMetadataPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksMetadataPtrInput` via: // -// JobDefinitionEksPropertiesArgs{...} +// JobDefinitionEksMetadataArgs{...} // // or: // // nil -type JobDefinitionEksPropertiesPtrInput interface { +type JobDefinitionEksMetadataPtrInput interface { pulumi.Input - ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput - ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Context) JobDefinitionEksPropertiesPtrOutput + ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput + ToJobDefinitionEksMetadataPtrOutputWithContext(context.Context) JobDefinitionEksMetadataPtrOutput } -type jobDefinitionEksPropertiesPtrType JobDefinitionEksPropertiesArgs +type jobDefinitionEksMetadataPtrType JobDefinitionEksMetadataArgs -func JobDefinitionEksPropertiesPtr(v *JobDefinitionEksPropertiesArgs) JobDefinitionEksPropertiesPtrInput { - return (*jobDefinitionEksPropertiesPtrType)(v) +func JobDefinitionEksMetadataPtr(v *JobDefinitionEksMetadataArgs) JobDefinitionEksMetadataPtrInput { + return (*jobDefinitionEksMetadataPtrType)(v) } -func (*jobDefinitionEksPropertiesPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() +func (*jobDefinitionEksMetadataPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksMetadata)(nil)).Elem() } -func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { - return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) +func (i *jobDefinitionEksMetadataPtrType) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { + return i.ToJobDefinitionEksMetadataPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesPtrOutput) +func (i *jobDefinitionEksMetadataPtrType) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksMetadataPtrOutput) } -type JobDefinitionEksPropertiesOutput struct{ *pulumi.OutputState } +type JobDefinitionEksMetadataOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksPropertiesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() +func (JobDefinitionEksMetadataOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksMetadata)(nil)).Elem() } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataOutput() JobDefinitionEksMetadataOutput { return o } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataOutputWithContext(ctx context.Context) JobDefinitionEksMetadataOutput { return o } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { - return o.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { + return o.ToJobDefinitionEksMetadataPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksProperties) *JobDefinitionEksProperties { +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksMetadata) *JobDefinitionEksMetadata { return &v - }).(JobDefinitionEksPropertiesPtrOutput) + }).(JobDefinitionEksMetadataPtrOutput) } -// The properties for the Kubernetes pod resources of a job. -func (o JobDefinitionEksPropertiesOutput) PodProperties() JobDefinitionPodPropertiesPtrOutput { - return o.ApplyT(func(v JobDefinitionEksProperties) *JobDefinitionPodProperties { return v.PodProperties }).(JobDefinitionPodPropertiesPtrOutput) +// Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. +func (o JobDefinitionEksMetadataOutput) Labels() pulumi.StringMapOutput { + return o.ApplyT(func(v JobDefinitionEksMetadata) map[string]string { return v.Labels }).(pulumi.StringMapOutput) } -type JobDefinitionEksPropertiesPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEksMetadataPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksPropertiesPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() +func (JobDefinitionEksMetadataPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksMetadata)(nil)).Elem() } -func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { +func (o JobDefinitionEksMetadataPtrOutput) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { return o } -func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { +func (o JobDefinitionEksMetadataPtrOutput) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { return o } -func (o JobDefinitionEksPropertiesPtrOutput) Elem() JobDefinitionEksPropertiesOutput { - return o.ApplyT(func(v *JobDefinitionEksProperties) JobDefinitionEksProperties { +func (o JobDefinitionEksMetadataPtrOutput) Elem() JobDefinitionEksMetadataOutput { + return o.ApplyT(func(v *JobDefinitionEksMetadata) JobDefinitionEksMetadata { if v != nil { return *v } - var ret JobDefinitionEksProperties + var ret JobDefinitionEksMetadata return ret - }).(JobDefinitionEksPropertiesOutput) + }).(JobDefinitionEksMetadataOutput) } -// The properties for the Kubernetes pod resources of a job. -func (o JobDefinitionEksPropertiesPtrOutput) PodProperties() JobDefinitionPodPropertiesPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksProperties) *JobDefinitionPodProperties { +// Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. +func (o JobDefinitionEksMetadataPtrOutput) Labels() pulumi.StringMapOutput { + return o.ApplyT(func(v *JobDefinitionEksMetadata) map[string]string { if v == nil { return nil } - return v.PodProperties - }).(JobDefinitionPodPropertiesPtrOutput) + return v.Labels + }).(pulumi.StringMapOutput) } -type JobDefinitionEksSecret struct { - // Specifies whether the secret or the secret's keys must be defined. - Optional *bool `pulumi:"optional"` - // The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . - SecretName string `pulumi:"secretName"` +type JobDefinitionEksPodProperties struct { + // The properties of the container that's used on the Amazon EKS pod. + // + // > This object is limited to 10 elements. + Containers []JobDefinitionEksContainer `pulumi:"containers"` + // The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + // + // Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` + DnsPolicy *string `pulumi:"dnsPolicy"` + // Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + HostNetwork *bool `pulumi:"hostNetwork"` + // References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + // + // `ImagePullSecret$name` is required when this object is used. + ImagePullSecrets []JobDefinitionImagePullSecret `pulumi:"imagePullSecrets"` + // These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + // + // > This object is limited to 10 elements. + InitContainers []JobDefinitionEksContainer `pulumi:"initContainers"` + // Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + Metadata *JobDefinitionEksMetadata `pulumi:"metadata"` + // The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + ServiceAccountName *string `pulumi:"serviceAccountName"` + // Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + ShareProcessNamespace *bool `pulumi:"shareProcessNamespace"` + // Specifies the volumes for a job definition that uses Amazon EKS resources. + Volumes []JobDefinitionEksVolume `pulumi:"volumes"` } -// JobDefinitionEksSecretInput is an input type that accepts JobDefinitionEksSecretArgs and JobDefinitionEksSecretOutput values. -// You can construct a concrete instance of `JobDefinitionEksSecretInput` via: +// JobDefinitionEksPodPropertiesInput is an input type that accepts JobDefinitionEksPodPropertiesArgs and JobDefinitionEksPodPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionEksPodPropertiesInput` via: // -// JobDefinitionEksSecretArgs{...} -type JobDefinitionEksSecretInput interface { +// JobDefinitionEksPodPropertiesArgs{...} +type JobDefinitionEksPodPropertiesInput interface { pulumi.Input - ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput - ToJobDefinitionEksSecretOutputWithContext(context.Context) JobDefinitionEksSecretOutput -} - -type JobDefinitionEksSecretArgs struct { - // Specifies whether the secret or the secret's keys must be defined. - Optional pulumi.BoolPtrInput `pulumi:"optional"` - // The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . - SecretName pulumi.StringInput `pulumi:"secretName"` -} - -func (JobDefinitionEksSecretArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() + ToJobDefinitionEksPodPropertiesOutput() JobDefinitionEksPodPropertiesOutput + ToJobDefinitionEksPodPropertiesOutputWithContext(context.Context) JobDefinitionEksPodPropertiesOutput } -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { - return i.ToJobDefinitionEksSecretOutputWithContext(context.Background()) -} +type JobDefinitionEksPodPropertiesArgs struct { + // The properties of the container that's used on the Amazon EKS pod. + // + // > This object is limited to 10 elements. + Containers JobDefinitionEksContainerArrayInput `pulumi:"containers"` + // The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + // + // Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` + DnsPolicy pulumi.StringPtrInput `pulumi:"dnsPolicy"` + // Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + HostNetwork pulumi.BoolPtrInput `pulumi:"hostNetwork"` + // References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + // + // `ImagePullSecret$name` is required when this object is used. + ImagePullSecrets JobDefinitionImagePullSecretArrayInput `pulumi:"imagePullSecrets"` + // These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + // + // > This object is limited to 10 elements. + InitContainers JobDefinitionEksContainerArrayInput `pulumi:"initContainers"` + // Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + Metadata JobDefinitionEksMetadataPtrInput `pulumi:"metadata"` + // The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + ServiceAccountName pulumi.StringPtrInput `pulumi:"serviceAccountName"` + // Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + ShareProcessNamespace pulumi.BoolPtrInput `pulumi:"shareProcessNamespace"` + // Specifies the volumes for a job definition that uses Amazon EKS resources. + Volumes JobDefinitionEksVolumeArrayInput `pulumi:"volumes"` +} -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput) +func (JobDefinitionEksPodPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksPodProperties)(nil)).Elem() } -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { - return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesOutput() JobDefinitionEksPodPropertiesOutput { + return i.ToJobDefinitionEksPodPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput).ToJobDefinitionEksSecretPtrOutputWithContext(ctx) +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPodPropertiesOutput) } -// JobDefinitionEksSecretPtrInput is an input type that accepts JobDefinitionEksSecretArgs, JobDefinitionEksSecretPtr and JobDefinitionEksSecretPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksSecretPtrInput` via: +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { + return i.ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPodPropertiesOutput).ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx) +} + +// JobDefinitionEksPodPropertiesPtrInput is an input type that accepts JobDefinitionEksPodPropertiesArgs, JobDefinitionEksPodPropertiesPtr and JobDefinitionEksPodPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksPodPropertiesPtrInput` via: // -// JobDefinitionEksSecretArgs{...} +// JobDefinitionEksPodPropertiesArgs{...} // // or: // // nil -type JobDefinitionEksSecretPtrInput interface { +type JobDefinitionEksPodPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput - ToJobDefinitionEksSecretPtrOutputWithContext(context.Context) JobDefinitionEksSecretPtrOutput + ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput + ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Context) JobDefinitionEksPodPropertiesPtrOutput } -type jobDefinitionEksSecretPtrType JobDefinitionEksSecretArgs +type jobDefinitionEksPodPropertiesPtrType JobDefinitionEksPodPropertiesArgs -func JobDefinitionEksSecretPtr(v *JobDefinitionEksSecretArgs) JobDefinitionEksSecretPtrInput { - return (*jobDefinitionEksSecretPtrType)(v) +func JobDefinitionEksPodPropertiesPtr(v *JobDefinitionEksPodPropertiesArgs) JobDefinitionEksPodPropertiesPtrInput { + return (*jobDefinitionEksPodPropertiesPtrType)(v) } -func (*jobDefinitionEksSecretPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() +func (*jobDefinitionEksPodPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksPodProperties)(nil)).Elem() } -func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { - return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) +func (i *jobDefinitionEksPodPropertiesPtrType) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { + return i.ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretPtrOutput) +func (i *jobDefinitionEksPodPropertiesPtrType) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPodPropertiesPtrOutput) } -type JobDefinitionEksSecretOutput struct{ *pulumi.OutputState } +type JobDefinitionEksPodPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksSecretOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() +func (JobDefinitionEksPodPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksPodProperties)(nil)).Elem() } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesOutput() JobDefinitionEksPodPropertiesOutput { return o } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesOutput { return o } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { - return o.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { + return o.ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksSecret) *JobDefinitionEksSecret { +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksPodProperties) *JobDefinitionEksPodProperties { return &v - }).(JobDefinitionEksSecretPtrOutput) + }).(JobDefinitionEksPodPropertiesPtrOutput) } -// Specifies whether the secret or the secret's keys must be defined. -func (o JobDefinitionEksSecretOutput) Optional() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionEksSecret) *bool { return v.Optional }).(pulumi.BoolPtrOutput) +// The properties of the container that's used on the Amazon EKS pod. +// +// > This object is limited to 10 elements. +func (o JobDefinitionEksPodPropertiesOutput) Containers() JobDefinitionEksContainerArrayOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) []JobDefinitionEksContainer { return v.Containers }).(JobDefinitionEksContainerArrayOutput) } -// The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . -func (o JobDefinitionEksSecretOutput) SecretName() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEksSecret) string { return v.SecretName }).(pulumi.StringOutput) +// The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . +// +// Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` +func (o JobDefinitionEksPodPropertiesOutput) DnsPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *string { return v.DnsPolicy }).(pulumi.StringPtrOutput) } -type JobDefinitionEksSecretPtrOutput struct{ *pulumi.OutputState } +// Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . +func (o JobDefinitionEksPodPropertiesOutput) HostNetwork() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *bool { return v.HostNetwork }).(pulumi.BoolPtrOutput) +} -func (JobDefinitionEksSecretPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() +// References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. +// +// `ImagePullSecret$name` is required when this object is used. +func (o JobDefinitionEksPodPropertiesOutput) ImagePullSecrets() JobDefinitionImagePullSecretArrayOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) []JobDefinitionImagePullSecret { return v.ImagePullSecrets }).(JobDefinitionImagePullSecretArrayOutput) } -func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { +// These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . +// +// > This object is limited to 10 elements. +func (o JobDefinitionEksPodPropertiesOutput) InitContainers() JobDefinitionEksContainerArrayOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) []JobDefinitionEksContainer { return v.InitContainers }).(JobDefinitionEksContainerArrayOutput) +} + +// Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . +func (o JobDefinitionEksPodPropertiesOutput) Metadata() JobDefinitionEksMetadataPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *JobDefinitionEksMetadata { return v.Metadata }).(JobDefinitionEksMetadataPtrOutput) +} + +// The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . +func (o JobDefinitionEksPodPropertiesOutput) ServiceAccountName() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *string { return v.ServiceAccountName }).(pulumi.StringPtrOutput) +} + +// Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . +func (o JobDefinitionEksPodPropertiesOutput) ShareProcessNamespace() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *bool { return v.ShareProcessNamespace }).(pulumi.BoolPtrOutput) +} + +// Specifies the volumes for a job definition that uses Amazon EKS resources. +func (o JobDefinitionEksPodPropertiesOutput) Volumes() JobDefinitionEksVolumeArrayOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) []JobDefinitionEksVolume { return v.Volumes }).(JobDefinitionEksVolumeArrayOutput) +} + +type JobDefinitionEksPodPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksPodPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksPodProperties)(nil)).Elem() +} + +func (o JobDefinitionEksPodPropertiesPtrOutput) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { return o } -func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { +func (o JobDefinitionEksPodPropertiesPtrOutput) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { return o } -func (o JobDefinitionEksSecretPtrOutput) Elem() JobDefinitionEksSecretOutput { - return o.ApplyT(func(v *JobDefinitionEksSecret) JobDefinitionEksSecret { +func (o JobDefinitionEksPodPropertiesPtrOutput) Elem() JobDefinitionEksPodPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) JobDefinitionEksPodProperties { if v != nil { return *v } - var ret JobDefinitionEksSecret + var ret JobDefinitionEksPodProperties return ret - }).(JobDefinitionEksSecretOutput) + }).(JobDefinitionEksPodPropertiesOutput) } -// Specifies whether the secret or the secret's keys must be defined. -func (o JobDefinitionEksSecretPtrOutput) Optional() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksSecret) *bool { +// The properties of the container that's used on the Amazon EKS pod. +// +// > This object is limited to 10 elements. +func (o JobDefinitionEksPodPropertiesPtrOutput) Containers() JobDefinitionEksContainerArrayOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) []JobDefinitionEksContainer { if v == nil { return nil } - return v.Optional - }).(pulumi.BoolPtrOutput) + return v.Containers + }).(JobDefinitionEksContainerArrayOutput) } -// The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . -func (o JobDefinitionEksSecretPtrOutput) SecretName() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksSecret) *string { +// The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . +// +// Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` +func (o JobDefinitionEksPodPropertiesPtrOutput) DnsPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *string { if v == nil { return nil } - return &v.SecretName + return v.DnsPolicy }).(pulumi.StringPtrOutput) } -type JobDefinitionEksVolume struct { - // Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . - EmptyDir *JobDefinitionEksEmptyDir `pulumi:"emptyDir"` - // Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . - HostPath *JobDefinitionEksHostPath `pulumi:"hostPath"` - // The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . - Name string `pulumi:"name"` - // Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . - Secret *JobDefinitionEksSecret `pulumi:"secret"` +// Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . +func (o JobDefinitionEksPodPropertiesPtrOutput) HostNetwork() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *bool { + if v == nil { + return nil + } + return v.HostNetwork + }).(pulumi.BoolPtrOutput) } -// JobDefinitionEksVolumeInput is an input type that accepts JobDefinitionEksVolumeArgs and JobDefinitionEksVolumeOutput values. -// You can construct a concrete instance of `JobDefinitionEksVolumeInput` via: +// References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. // -// JobDefinitionEksVolumeArgs{...} -type JobDefinitionEksVolumeInput interface { - pulumi.Input +// `ImagePullSecret$name` is required when this object is used. +func (o JobDefinitionEksPodPropertiesPtrOutput) ImagePullSecrets() JobDefinitionImagePullSecretArrayOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) []JobDefinitionImagePullSecret { + if v == nil { + return nil + } + return v.ImagePullSecrets + }).(JobDefinitionImagePullSecretArrayOutput) +} - ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput - ToJobDefinitionEksVolumeOutputWithContext(context.Context) JobDefinitionEksVolumeOutput +// These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . +// +// > This object is limited to 10 elements. +func (o JobDefinitionEksPodPropertiesPtrOutput) InitContainers() JobDefinitionEksContainerArrayOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) []JobDefinitionEksContainer { + if v == nil { + return nil + } + return v.InitContainers + }).(JobDefinitionEksContainerArrayOutput) } -type JobDefinitionEksVolumeArgs struct { - // Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . - EmptyDir JobDefinitionEksEmptyDirPtrInput `pulumi:"emptyDir"` - // Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . - HostPath JobDefinitionEksHostPathPtrInput `pulumi:"hostPath"` - // The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . - Name pulumi.StringInput `pulumi:"name"` - // Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . - Secret JobDefinitionEksSecretPtrInput `pulumi:"secret"` +// Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . +func (o JobDefinitionEksPodPropertiesPtrOutput) Metadata() JobDefinitionEksMetadataPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *JobDefinitionEksMetadata { + if v == nil { + return nil + } + return v.Metadata + }).(JobDefinitionEksMetadataPtrOutput) } -func (JobDefinitionEksVolumeArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() +// The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . +func (o JobDefinitionEksPodPropertiesPtrOutput) ServiceAccountName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *string { + if v == nil { + return nil + } + return v.ServiceAccountName + }).(pulumi.StringPtrOutput) } -func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { - return i.ToJobDefinitionEksVolumeOutputWithContext(context.Background()) +// Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . +func (o JobDefinitionEksPodPropertiesPtrOutput) ShareProcessNamespace() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *bool { + if v == nil { + return nil + } + return v.ShareProcessNamespace + }).(pulumi.BoolPtrOutput) } -func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeOutput) +// Specifies the volumes for a job definition that uses Amazon EKS resources. +func (o JobDefinitionEksPodPropertiesPtrOutput) Volumes() JobDefinitionEksVolumeArrayOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) []JobDefinitionEksVolume { + if v == nil { + return nil + } + return v.Volumes + }).(JobDefinitionEksVolumeArrayOutput) } -// JobDefinitionEksVolumeArrayInput is an input type that accepts JobDefinitionEksVolumeArray and JobDefinitionEksVolumeArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEksVolumeArrayInput` via: +type JobDefinitionEksProperties struct { + // The properties for the Kubernetes pod resources of a job. + PodProperties *JobDefinitionEksPodProperties `pulumi:"podProperties"` +} + +// JobDefinitionEksPropertiesInput is an input type that accepts JobDefinitionEksPropertiesArgs and JobDefinitionEksPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionEksPropertiesInput` via: // -// JobDefinitionEksVolumeArray{ JobDefinitionEksVolumeArgs{...} } -type JobDefinitionEksVolumeArrayInput interface { +// JobDefinitionEksPropertiesArgs{...} +type JobDefinitionEksPropertiesInput interface { pulumi.Input - ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput - ToJobDefinitionEksVolumeArrayOutputWithContext(context.Context) JobDefinitionEksVolumeArrayOutput + ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput + ToJobDefinitionEksPropertiesOutputWithContext(context.Context) JobDefinitionEksPropertiesOutput } -type JobDefinitionEksVolumeArray []JobDefinitionEksVolumeInput - -func (JobDefinitionEksVolumeArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() +type JobDefinitionEksPropertiesArgs struct { + // The properties for the Kubernetes pod resources of a job. + PodProperties JobDefinitionEksPodPropertiesPtrInput `pulumi:"podProperties"` } -func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { - return i.ToJobDefinitionEksVolumeArrayOutputWithContext(context.Background()) +func (JobDefinitionEksPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() } -func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeArrayOutput) +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { + return i.ToJobDefinitionEksPropertiesOutputWithContext(context.Background()) } -type JobDefinitionEksVolumeOutput struct{ *pulumi.OutputState } - -func (JobDefinitionEksVolumeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput) } -func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { - return o +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { + return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { - return o +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput).ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx) } -// Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . -func (o JobDefinitionEksVolumeOutput) EmptyDir() JobDefinitionEksEmptyDirPtrOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksEmptyDir { return v.EmptyDir }).(JobDefinitionEksEmptyDirPtrOutput) +// JobDefinitionEksPropertiesPtrInput is an input type that accepts JobDefinitionEksPropertiesArgs, JobDefinitionEksPropertiesPtr and JobDefinitionEksPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksPropertiesPtrInput` via: +// +// JobDefinitionEksPropertiesArgs{...} +// +// or: +// +// nil +type JobDefinitionEksPropertiesPtrInput interface { + pulumi.Input + + ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput + ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Context) JobDefinitionEksPropertiesPtrOutput } -// Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . -func (o JobDefinitionEksVolumeOutput) HostPath() JobDefinitionEksHostPathPtrOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksHostPath { return v.HostPath }).(JobDefinitionEksHostPathPtrOutput) -} - -// The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . -func (o JobDefinitionEksVolumeOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) string { return v.Name }).(pulumi.StringOutput) -} - -// Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . -func (o JobDefinitionEksVolumeOutput) Secret() JobDefinitionEksSecretPtrOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksSecret { return v.Secret }).(JobDefinitionEksSecretPtrOutput) -} - -type JobDefinitionEksVolumeArrayOutput struct{ *pulumi.OutputState } - -func (JobDefinitionEksVolumeArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() -} - -func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { - return o -} - -func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { - return o -} +type jobDefinitionEksPropertiesPtrType JobDefinitionEksPropertiesArgs -func (o JobDefinitionEksVolumeArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksVolumeOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksVolume { - return vs[0].([]JobDefinitionEksVolume)[vs[1].(int)] - }).(JobDefinitionEksVolumeOutput) +func JobDefinitionEksPropertiesPtr(v *JobDefinitionEksPropertiesArgs) JobDefinitionEksPropertiesPtrInput { + return (*jobDefinitionEksPropertiesPtrType)(v) } -type JobDefinitionEnvironment struct { - // The name of the environment variable. - Name *string `pulumi:"name"` - // The value of the environment variable. - Value *string `pulumi:"value"` +func (*jobDefinitionEksPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() } -// JobDefinitionEnvironmentInput is an input type that accepts JobDefinitionEnvironmentArgs and JobDefinitionEnvironmentOutput values. -// You can construct a concrete instance of `JobDefinitionEnvironmentInput` via: -// -// JobDefinitionEnvironmentArgs{...} -type JobDefinitionEnvironmentInput interface { - pulumi.Input - - ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput - ToJobDefinitionEnvironmentOutputWithContext(context.Context) JobDefinitionEnvironmentOutput +func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { + return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) } -type JobDefinitionEnvironmentArgs struct { - // The name of the environment variable. - Name pulumi.StringPtrInput `pulumi:"name"` - // The value of the environment variable. - Value pulumi.StringPtrInput `pulumi:"value"` +func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesPtrOutput) } -func (JobDefinitionEnvironmentArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() -} +type JobDefinitionEksPropertiesOutput struct{ *pulumi.OutputState } -func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { - return i.ToJobDefinitionEnvironmentOutputWithContext(context.Background()) +func (JobDefinitionEksPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() } -func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentOutput) +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { + return o } -// JobDefinitionEnvironmentArrayInput is an input type that accepts JobDefinitionEnvironmentArray and JobDefinitionEnvironmentArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEnvironmentArrayInput` via: -// -// JobDefinitionEnvironmentArray{ JobDefinitionEnvironmentArgs{...} } -type JobDefinitionEnvironmentArrayInput interface { - pulumi.Input - - ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput - ToJobDefinitionEnvironmentArrayOutputWithContext(context.Context) JobDefinitionEnvironmentArrayOutput +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { + return o } -type JobDefinitionEnvironmentArray []JobDefinitionEnvironmentInput - -func (JobDefinitionEnvironmentArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { + return o.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { - return i.ToJobDefinitionEnvironmentArrayOutputWithContext(context.Background()) +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksProperties) *JobDefinitionEksProperties { + return &v + }).(JobDefinitionEksPropertiesPtrOutput) } -func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentArrayOutput) +// The properties for the Kubernetes pod resources of a job. +func (o JobDefinitionEksPropertiesOutput) PodProperties() JobDefinitionEksPodPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionEksProperties) *JobDefinitionEksPodProperties { return v.PodProperties }).(JobDefinitionEksPodPropertiesPtrOutput) } -type JobDefinitionEnvironmentOutput struct{ *pulumi.OutputState } - -func (JobDefinitionEnvironmentOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() -} +type JobDefinitionEksPropertiesPtrOutput struct{ *pulumi.OutputState } -func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { - return o +func (JobDefinitionEksPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() } -func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { +func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { return o } -// The name of the environment variable. -func (o JobDefinitionEnvironmentOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// The value of the environment variable. -func (o JobDefinitionEnvironmentOutput) Value() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Value }).(pulumi.StringPtrOutput) -} - -type JobDefinitionEnvironmentArrayOutput struct{ *pulumi.OutputState } - -func (JobDefinitionEnvironmentArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() -} - -func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { +func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { return o } -func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { - return o +func (o JobDefinitionEksPropertiesPtrOutput) Elem() JobDefinitionEksPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionEksProperties) JobDefinitionEksProperties { + if v != nil { + return *v + } + var ret JobDefinitionEksProperties + return ret + }).(JobDefinitionEksPropertiesOutput) } -func (o JobDefinitionEnvironmentArrayOutput) Index(i pulumi.IntInput) JobDefinitionEnvironmentOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEnvironment { - return vs[0].([]JobDefinitionEnvironment)[vs[1].(int)] - }).(JobDefinitionEnvironmentOutput) +// The properties for the Kubernetes pod resources of a job. +func (o JobDefinitionEksPropertiesPtrOutput) PodProperties() JobDefinitionEksPodPropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksProperties) *JobDefinitionEksPodProperties { + if v == nil { + return nil + } + return v.PodProperties + }).(JobDefinitionEksPodPropertiesPtrOutput) } -type JobDefinitionEphemeralStorage struct { - // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. - SizeInGiB int `pulumi:"sizeInGiB"` +type JobDefinitionEksSecret struct { + // Specifies whether the secret or the secret's keys must be defined. + Optional *bool `pulumi:"optional"` + // The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + SecretName string `pulumi:"secretName"` } -// JobDefinitionEphemeralStorageInput is an input type that accepts JobDefinitionEphemeralStorageArgs and JobDefinitionEphemeralStorageOutput values. -// You can construct a concrete instance of `JobDefinitionEphemeralStorageInput` via: +// JobDefinitionEksSecretInput is an input type that accepts JobDefinitionEksSecretArgs and JobDefinitionEksSecretOutput values. +// You can construct a concrete instance of `JobDefinitionEksSecretInput` via: // -// JobDefinitionEphemeralStorageArgs{...} -type JobDefinitionEphemeralStorageInput interface { +// JobDefinitionEksSecretArgs{...} +type JobDefinitionEksSecretInput interface { pulumi.Input - ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput - ToJobDefinitionEphemeralStorageOutputWithContext(context.Context) JobDefinitionEphemeralStorageOutput + ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput + ToJobDefinitionEksSecretOutputWithContext(context.Context) JobDefinitionEksSecretOutput } -type JobDefinitionEphemeralStorageArgs struct { - // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. - SizeInGiB pulumi.IntInput `pulumi:"sizeInGiB"` +type JobDefinitionEksSecretArgs struct { + // Specifies whether the secret or the secret's keys must be defined. + Optional pulumi.BoolPtrInput `pulumi:"optional"` + // The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + SecretName pulumi.StringInput `pulumi:"secretName"` } -func (JobDefinitionEphemeralStorageArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEphemeralStorage)(nil)).Elem() +func (JobDefinitionEksSecretArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput { - return i.ToJobDefinitionEphemeralStorageOutputWithContext(context.Background()) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { + return i.ToJobDefinitionEksSecretOutputWithContext(context.Background()) } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStorageOutputWithContext(ctx context.Context) JobDefinitionEphemeralStorageOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStorageOutput) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput) } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { - return i.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { + return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStorageOutput).ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput).ToJobDefinitionEksSecretPtrOutputWithContext(ctx) } -// JobDefinitionEphemeralStoragePtrInput is an input type that accepts JobDefinitionEphemeralStorageArgs, JobDefinitionEphemeralStoragePtr and JobDefinitionEphemeralStoragePtrOutput values. -// You can construct a concrete instance of `JobDefinitionEphemeralStoragePtrInput` via: +// JobDefinitionEksSecretPtrInput is an input type that accepts JobDefinitionEksSecretArgs, JobDefinitionEksSecretPtr and JobDefinitionEksSecretPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksSecretPtrInput` via: // -// JobDefinitionEphemeralStorageArgs{...} +// JobDefinitionEksSecretArgs{...} // // or: // // nil -type JobDefinitionEphemeralStoragePtrInput interface { +type JobDefinitionEksSecretPtrInput interface { pulumi.Input - ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput - ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Context) JobDefinitionEphemeralStoragePtrOutput + ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput + ToJobDefinitionEksSecretPtrOutputWithContext(context.Context) JobDefinitionEksSecretPtrOutput } -type jobDefinitionEphemeralStoragePtrType JobDefinitionEphemeralStorageArgs +type jobDefinitionEksSecretPtrType JobDefinitionEksSecretArgs -func JobDefinitionEphemeralStoragePtr(v *JobDefinitionEphemeralStorageArgs) JobDefinitionEphemeralStoragePtrInput { - return (*jobDefinitionEphemeralStoragePtrType)(v) +func JobDefinitionEksSecretPtr(v *JobDefinitionEksSecretArgs) JobDefinitionEksSecretPtrInput { + return (*jobDefinitionEksSecretPtrType)(v) } -func (*jobDefinitionEphemeralStoragePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEphemeralStorage)(nil)).Elem() +func (*jobDefinitionEksSecretPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() } -func (i *jobDefinitionEphemeralStoragePtrType) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { - return i.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { + return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEphemeralStoragePtrType) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStoragePtrOutput) +func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretPtrOutput) } -type JobDefinitionEphemeralStorageOutput struct{ *pulumi.OutputState } +type JobDefinitionEksSecretOutput struct{ *pulumi.OutputState } -func (JobDefinitionEphemeralStorageOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEphemeralStorage)(nil)).Elem() +func (JobDefinitionEksSecretOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput { +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { return o } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStorageOutputWithContext(ctx context.Context) JobDefinitionEphemeralStorageOutput { +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { return o } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { - return o.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { + return o.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEphemeralStorage) *JobDefinitionEphemeralStorage { +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksSecret) *JobDefinitionEksSecret { return &v - }).(JobDefinitionEphemeralStoragePtrOutput) + }).(JobDefinitionEksSecretPtrOutput) } -// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. -func (o JobDefinitionEphemeralStorageOutput) SizeInGiB() pulumi.IntOutput { - return o.ApplyT(func(v JobDefinitionEphemeralStorage) int { return v.SizeInGiB }).(pulumi.IntOutput) +// Specifies whether the secret or the secret's keys must be defined. +func (o JobDefinitionEksSecretOutput) Optional() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksSecret) *bool { return v.Optional }).(pulumi.BoolPtrOutput) } -type JobDefinitionEphemeralStoragePtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionEphemeralStoragePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEphemeralStorage)(nil)).Elem() +// The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . +func (o JobDefinitionEksSecretOutput) SecretName() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEksSecret) string { return v.SecretName }).(pulumi.StringOutput) } -func (o JobDefinitionEphemeralStoragePtrOutput) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { +type JobDefinitionEksSecretPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksSecretPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() +} + +func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { return o } -func (o JobDefinitionEphemeralStoragePtrOutput) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { +func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { return o } -func (o JobDefinitionEphemeralStoragePtrOutput) Elem() JobDefinitionEphemeralStorageOutput { - return o.ApplyT(func(v *JobDefinitionEphemeralStorage) JobDefinitionEphemeralStorage { +func (o JobDefinitionEksSecretPtrOutput) Elem() JobDefinitionEksSecretOutput { + return o.ApplyT(func(v *JobDefinitionEksSecret) JobDefinitionEksSecret { if v != nil { return *v } - var ret JobDefinitionEphemeralStorage + var ret JobDefinitionEksSecret return ret - }).(JobDefinitionEphemeralStorageOutput) + }).(JobDefinitionEksSecretOutput) } -// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. -func (o JobDefinitionEphemeralStoragePtrOutput) SizeInGiB() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionEphemeralStorage) *int { +// Specifies whether the secret or the secret's keys must be defined. +func (o JobDefinitionEksSecretPtrOutput) Optional() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksSecret) *bool { if v == nil { return nil } - return &v.SizeInGiB - }).(pulumi.IntPtrOutput) + return v.Optional + }).(pulumi.BoolPtrOutput) } -type JobDefinitionEvaluateOnExit struct { - // Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. - Action string `pulumi:"action"` - // Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - // - // The string can contain up to 512 characters. - OnExitCode *string `pulumi:"onExitCode"` - // Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. - OnReason *string `pulumi:"onReason"` - // Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. - OnStatusReason *string `pulumi:"onStatusReason"` +// The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . +func (o JobDefinitionEksSecretPtrOutput) SecretName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksSecret) *string { + if v == nil { + return nil + } + return &v.SecretName + }).(pulumi.StringPtrOutput) } -// JobDefinitionEvaluateOnExitInput is an input type that accepts JobDefinitionEvaluateOnExitArgs and JobDefinitionEvaluateOnExitOutput values. -// You can construct a concrete instance of `JobDefinitionEvaluateOnExitInput` via: +type JobDefinitionEksVolume struct { + // Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . + EmptyDir *JobDefinitionEksEmptyDir `pulumi:"emptyDir"` + // Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . + HostPath *JobDefinitionEksHostPath `pulumi:"hostPath"` + // The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + Name string `pulumi:"name"` + // Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . + Secret *JobDefinitionEksSecret `pulumi:"secret"` +} + +// JobDefinitionEksVolumeInput is an input type that accepts JobDefinitionEksVolumeArgs and JobDefinitionEksVolumeOutput values. +// You can construct a concrete instance of `JobDefinitionEksVolumeInput` via: // -// JobDefinitionEvaluateOnExitArgs{...} -type JobDefinitionEvaluateOnExitInput interface { +// JobDefinitionEksVolumeArgs{...} +type JobDefinitionEksVolumeInput interface { pulumi.Input - ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput - ToJobDefinitionEvaluateOnExitOutputWithContext(context.Context) JobDefinitionEvaluateOnExitOutput + ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput + ToJobDefinitionEksVolumeOutputWithContext(context.Context) JobDefinitionEksVolumeOutput } -type JobDefinitionEvaluateOnExitArgs struct { - // Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. - Action pulumi.StringInput `pulumi:"action"` - // Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - // - // The string can contain up to 512 characters. - OnExitCode pulumi.StringPtrInput `pulumi:"onExitCode"` - // Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. - OnReason pulumi.StringPtrInput `pulumi:"onReason"` - // Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. - OnStatusReason pulumi.StringPtrInput `pulumi:"onStatusReason"` +type JobDefinitionEksVolumeArgs struct { + // Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . + EmptyDir JobDefinitionEksEmptyDirPtrInput `pulumi:"emptyDir"` + // Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . + HostPath JobDefinitionEksHostPathPtrInput `pulumi:"hostPath"` + // The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + Name pulumi.StringInput `pulumi:"name"` + // Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . + Secret JobDefinitionEksSecretPtrInput `pulumi:"secret"` } -func (JobDefinitionEvaluateOnExitArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() +func (JobDefinitionEksVolumeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() } -func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { - return i.ToJobDefinitionEvaluateOnExitOutputWithContext(context.Background()) +func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { + return i.ToJobDefinitionEksVolumeOutputWithContext(context.Background()) } -func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitOutput) +func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeOutput) } -// JobDefinitionEvaluateOnExitArrayInput is an input type that accepts JobDefinitionEvaluateOnExitArray and JobDefinitionEvaluateOnExitArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEvaluateOnExitArrayInput` via: +// JobDefinitionEksVolumeArrayInput is an input type that accepts JobDefinitionEksVolumeArray and JobDefinitionEksVolumeArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEksVolumeArrayInput` via: // -// JobDefinitionEvaluateOnExitArray{ JobDefinitionEvaluateOnExitArgs{...} } -type JobDefinitionEvaluateOnExitArrayInput interface { +// JobDefinitionEksVolumeArray{ JobDefinitionEksVolumeArgs{...} } +type JobDefinitionEksVolumeArrayInput interface { pulumi.Input - ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput - ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Context) JobDefinitionEvaluateOnExitArrayOutput + ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput + ToJobDefinitionEksVolumeArrayOutputWithContext(context.Context) JobDefinitionEksVolumeArrayOutput } -type JobDefinitionEvaluateOnExitArray []JobDefinitionEvaluateOnExitInput +type JobDefinitionEksVolumeArray []JobDefinitionEksVolumeInput -func (JobDefinitionEvaluateOnExitArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() +func (JobDefinitionEksVolumeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() } -func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { - return i.ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Background()) +func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { + return i.ToJobDefinitionEksVolumeArrayOutputWithContext(context.Background()) } -func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitArrayOutput) +func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeArrayOutput) } -type JobDefinitionEvaluateOnExitOutput struct{ *pulumi.OutputState } +type JobDefinitionEksVolumeOutput struct{ *pulumi.OutputState } -func (JobDefinitionEvaluateOnExitOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() +func (JobDefinitionEksVolumeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() } -func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { +func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { return o } -func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { +func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { return o } -// Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. -func (o JobDefinitionEvaluateOnExitOutput) Action() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) string { return v.Action }).(pulumi.StringOutput) +// Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . +func (o JobDefinitionEksVolumeOutput) EmptyDir() JobDefinitionEksEmptyDirPtrOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksEmptyDir { return v.EmptyDir }).(JobDefinitionEksEmptyDirPtrOutput) } -// Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. -// -// The string can contain up to 512 characters. -func (o JobDefinitionEvaluateOnExitOutput) OnExitCode() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnExitCode }).(pulumi.StringPtrOutput) +// Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . +func (o JobDefinitionEksVolumeOutput) HostPath() JobDefinitionEksHostPathPtrOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksHostPath { return v.HostPath }).(JobDefinitionEksHostPathPtrOutput) } -// Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. -func (o JobDefinitionEvaluateOnExitOutput) OnReason() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnReason }).(pulumi.StringPtrOutput) +// The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . +func (o JobDefinitionEksVolumeOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) string { return v.Name }).(pulumi.StringOutput) } -// Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. -func (o JobDefinitionEvaluateOnExitOutput) OnStatusReason() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnStatusReason }).(pulumi.StringPtrOutput) +// Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . +func (o JobDefinitionEksVolumeOutput) Secret() JobDefinitionEksSecretPtrOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksSecret { return v.Secret }).(JobDefinitionEksSecretPtrOutput) } -type JobDefinitionEvaluateOnExitArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionEksVolumeArrayOutput struct{ *pulumi.OutputState } -func (JobDefinitionEvaluateOnExitArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() +func (JobDefinitionEksVolumeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() } -func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { +func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { return o } -func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { +func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { return o } -func (o JobDefinitionEvaluateOnExitArrayOutput) Index(i pulumi.IntInput) JobDefinitionEvaluateOnExitOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEvaluateOnExit { - return vs[0].([]JobDefinitionEvaluateOnExit)[vs[1].(int)] - }).(JobDefinitionEvaluateOnExitOutput) +func (o JobDefinitionEksVolumeArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksVolumeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksVolume { + return vs[0].([]JobDefinitionEksVolume)[vs[1].(int)] + }).(JobDefinitionEksVolumeOutput) } -type JobDefinitionFargatePlatformConfiguration struct { - // The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . - PlatformVersion *string `pulumi:"platformVersion"` +type JobDefinitionEnvironment struct { + // The name of the environment variable. + Name *string `pulumi:"name"` + // The value of the environment variable. + Value *string `pulumi:"value"` } -// JobDefinitionFargatePlatformConfigurationInput is an input type that accepts JobDefinitionFargatePlatformConfigurationArgs and JobDefinitionFargatePlatformConfigurationOutput values. -// You can construct a concrete instance of `JobDefinitionFargatePlatformConfigurationInput` via: +// JobDefinitionEnvironmentInput is an input type that accepts JobDefinitionEnvironmentArgs and JobDefinitionEnvironmentOutput values. +// You can construct a concrete instance of `JobDefinitionEnvironmentInput` via: // -// JobDefinitionFargatePlatformConfigurationArgs{...} -type JobDefinitionFargatePlatformConfigurationInput interface { +// JobDefinitionEnvironmentArgs{...} +type JobDefinitionEnvironmentInput interface { pulumi.Input - ToJobDefinitionFargatePlatformConfigurationOutput() JobDefinitionFargatePlatformConfigurationOutput - ToJobDefinitionFargatePlatformConfigurationOutputWithContext(context.Context) JobDefinitionFargatePlatformConfigurationOutput -} - -type JobDefinitionFargatePlatformConfigurationArgs struct { - // The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . - PlatformVersion pulumi.StringPtrInput `pulumi:"platformVersion"` -} - -func (JobDefinitionFargatePlatformConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionFargatePlatformConfiguration)(nil)).Elem() + ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput + ToJobDefinitionEnvironmentOutputWithContext(context.Context) JobDefinitionEnvironmentOutput } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationOutput() JobDefinitionFargatePlatformConfigurationOutput { - return i.ToJobDefinitionFargatePlatformConfigurationOutputWithContext(context.Background()) +type JobDefinitionEnvironmentArgs struct { + // The name of the environment variable. + Name pulumi.StringPtrInput `pulumi:"name"` + // The value of the environment variable. + Value pulumi.StringPtrInput `pulumi:"value"` } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionFargatePlatformConfigurationOutput) +func (JobDefinitionEnvironmentArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { - return i.ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Background()) +func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { + return i.ToJobDefinitionEnvironmentOutputWithContext(context.Background()) } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionFargatePlatformConfigurationOutput).ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx) +func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentOutput) } -// JobDefinitionFargatePlatformConfigurationPtrInput is an input type that accepts JobDefinitionFargatePlatformConfigurationArgs, JobDefinitionFargatePlatformConfigurationPtr and JobDefinitionFargatePlatformConfigurationPtrOutput values. -// You can construct a concrete instance of `JobDefinitionFargatePlatformConfigurationPtrInput` via: -// -// JobDefinitionFargatePlatformConfigurationArgs{...} -// -// or: +// JobDefinitionEnvironmentArrayInput is an input type that accepts JobDefinitionEnvironmentArray and JobDefinitionEnvironmentArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEnvironmentArrayInput` via: // -// nil -type JobDefinitionFargatePlatformConfigurationPtrInput interface { +// JobDefinitionEnvironmentArray{ JobDefinitionEnvironmentArgs{...} } +type JobDefinitionEnvironmentArrayInput interface { pulumi.Input - ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput - ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput + ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput + ToJobDefinitionEnvironmentArrayOutputWithContext(context.Context) JobDefinitionEnvironmentArrayOutput } -type jobDefinitionFargatePlatformConfigurationPtrType JobDefinitionFargatePlatformConfigurationArgs - -func JobDefinitionFargatePlatformConfigurationPtr(v *JobDefinitionFargatePlatformConfigurationArgs) JobDefinitionFargatePlatformConfigurationPtrInput { - return (*jobDefinitionFargatePlatformConfigurationPtrType)(v) -} +type JobDefinitionEnvironmentArray []JobDefinitionEnvironmentInput -func (*jobDefinitionFargatePlatformConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionFargatePlatformConfiguration)(nil)).Elem() +func (JobDefinitionEnvironmentArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() } -func (i *jobDefinitionFargatePlatformConfigurationPtrType) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { - return i.ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Background()) +func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { + return i.ToJobDefinitionEnvironmentArrayOutputWithContext(context.Background()) } -func (i *jobDefinitionFargatePlatformConfigurationPtrType) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionFargatePlatformConfigurationPtrOutput) +func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentArrayOutput) } -type JobDefinitionFargatePlatformConfigurationOutput struct{ *pulumi.OutputState } +type JobDefinitionEnvironmentOutput struct{ *pulumi.OutputState } -func (JobDefinitionFargatePlatformConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionFargatePlatformConfiguration)(nil)).Elem() +func (JobDefinitionEnvironmentOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationOutput() JobDefinitionFargatePlatformConfigurationOutput { +func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationOutput { +func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { - return o.ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Background()) -} - -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionFargatePlatformConfiguration) *JobDefinitionFargatePlatformConfiguration { - return &v - }).(JobDefinitionFargatePlatformConfigurationPtrOutput) +// The name of the environment variable. +func (o JobDefinitionEnvironmentOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Name }).(pulumi.StringPtrOutput) } -// The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . -func (o JobDefinitionFargatePlatformConfigurationOutput) PlatformVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionFargatePlatformConfiguration) *string { return v.PlatformVersion }).(pulumi.StringPtrOutput) +// The value of the environment variable. +func (o JobDefinitionEnvironmentOutput) Value() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Value }).(pulumi.StringPtrOutput) } -type JobDefinitionFargatePlatformConfigurationPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEnvironmentArrayOutput struct{ *pulumi.OutputState } -func (JobDefinitionFargatePlatformConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionFargatePlatformConfiguration)(nil)).Elem() +func (JobDefinitionEnvironmentArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { +func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { +func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) Elem() JobDefinitionFargatePlatformConfigurationOutput { - return o.ApplyT(func(v *JobDefinitionFargatePlatformConfiguration) JobDefinitionFargatePlatformConfiguration { - if v != nil { - return *v - } - var ret JobDefinitionFargatePlatformConfiguration - return ret - }).(JobDefinitionFargatePlatformConfigurationOutput) +func (o JobDefinitionEnvironmentArrayOutput) Index(i pulumi.IntInput) JobDefinitionEnvironmentOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEnvironment { + return vs[0].([]JobDefinitionEnvironment)[vs[1].(int)] + }).(JobDefinitionEnvironmentOutput) } -// The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) PlatformVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionFargatePlatformConfiguration) *string { +type JobDefinitionEphemeralStorage struct { + // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. + SizeInGiB int `pulumi:"sizeInGiB"` +} + +// JobDefinitionEphemeralStorageInput is an input type that accepts JobDefinitionEphemeralStorageArgs and JobDefinitionEphemeralStorageOutput values. +// You can construct a concrete instance of `JobDefinitionEphemeralStorageInput` via: +// +// JobDefinitionEphemeralStorageArgs{...} +type JobDefinitionEphemeralStorageInput interface { + pulumi.Input + + ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput + ToJobDefinitionEphemeralStorageOutputWithContext(context.Context) JobDefinitionEphemeralStorageOutput +} + +type JobDefinitionEphemeralStorageArgs struct { + // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. + SizeInGiB pulumi.IntInput `pulumi:"sizeInGiB"` +} + +func (JobDefinitionEphemeralStorageArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEphemeralStorage)(nil)).Elem() +} + +func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput { + return i.ToJobDefinitionEphemeralStorageOutputWithContext(context.Background()) +} + +func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStorageOutputWithContext(ctx context.Context) JobDefinitionEphemeralStorageOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStorageOutput) +} + +func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { + return i.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStorageOutput).ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx) +} + +// JobDefinitionEphemeralStoragePtrInput is an input type that accepts JobDefinitionEphemeralStorageArgs, JobDefinitionEphemeralStoragePtr and JobDefinitionEphemeralStoragePtrOutput values. +// You can construct a concrete instance of `JobDefinitionEphemeralStoragePtrInput` via: +// +// JobDefinitionEphemeralStorageArgs{...} +// +// or: +// +// nil +type JobDefinitionEphemeralStoragePtrInput interface { + pulumi.Input + + ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput + ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Context) JobDefinitionEphemeralStoragePtrOutput +} + +type jobDefinitionEphemeralStoragePtrType JobDefinitionEphemeralStorageArgs + +func JobDefinitionEphemeralStoragePtr(v *JobDefinitionEphemeralStorageArgs) JobDefinitionEphemeralStoragePtrInput { + return (*jobDefinitionEphemeralStoragePtrType)(v) +} + +func (*jobDefinitionEphemeralStoragePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEphemeralStorage)(nil)).Elem() +} + +func (i *jobDefinitionEphemeralStoragePtrType) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { + return i.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionEphemeralStoragePtrType) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStoragePtrOutput) +} + +type JobDefinitionEphemeralStorageOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEphemeralStorageOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEphemeralStorage)(nil)).Elem() +} + +func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput { + return o +} + +func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStorageOutputWithContext(ctx context.Context) JobDefinitionEphemeralStorageOutput { + return o +} + +func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { + return o.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEphemeralStorage) *JobDefinitionEphemeralStorage { + return &v + }).(JobDefinitionEphemeralStoragePtrOutput) +} + +// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. +func (o JobDefinitionEphemeralStorageOutput) SizeInGiB() pulumi.IntOutput { + return o.ApplyT(func(v JobDefinitionEphemeralStorage) int { return v.SizeInGiB }).(pulumi.IntOutput) +} + +type JobDefinitionEphemeralStoragePtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEphemeralStoragePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEphemeralStorage)(nil)).Elem() +} + +func (o JobDefinitionEphemeralStoragePtrOutput) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { + return o +} + +func (o JobDefinitionEphemeralStoragePtrOutput) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { + return o +} + +func (o JobDefinitionEphemeralStoragePtrOutput) Elem() JobDefinitionEphemeralStorageOutput { + return o.ApplyT(func(v *JobDefinitionEphemeralStorage) JobDefinitionEphemeralStorage { + if v != nil { + return *v + } + var ret JobDefinitionEphemeralStorage + return ret + }).(JobDefinitionEphemeralStorageOutput) +} + +// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. +func (o JobDefinitionEphemeralStoragePtrOutput) SizeInGiB() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionEphemeralStorage) *int { if v == nil { return nil } - return v.PlatformVersion + return &v.SizeInGiB + }).(pulumi.IntPtrOutput) +} + +type JobDefinitionEvaluateOnExit struct { + // Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. + Action string `pulumi:"action"` + // Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. + // + // The string can contain up to 512 characters. + OnExitCode *string `pulumi:"onExitCode"` + // Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + OnReason *string `pulumi:"onReason"` + // Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + OnStatusReason *string `pulumi:"onStatusReason"` +} + +// JobDefinitionEvaluateOnExitInput is an input type that accepts JobDefinitionEvaluateOnExitArgs and JobDefinitionEvaluateOnExitOutput values. +// You can construct a concrete instance of `JobDefinitionEvaluateOnExitInput` via: +// +// JobDefinitionEvaluateOnExitArgs{...} +type JobDefinitionEvaluateOnExitInput interface { + pulumi.Input + + ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput + ToJobDefinitionEvaluateOnExitOutputWithContext(context.Context) JobDefinitionEvaluateOnExitOutput +} + +type JobDefinitionEvaluateOnExitArgs struct { + // Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. + Action pulumi.StringInput `pulumi:"action"` + // Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. + // + // The string can contain up to 512 characters. + OnExitCode pulumi.StringPtrInput `pulumi:"onExitCode"` + // Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + OnReason pulumi.StringPtrInput `pulumi:"onReason"` + // Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + OnStatusReason pulumi.StringPtrInput `pulumi:"onStatusReason"` +} + +func (JobDefinitionEvaluateOnExitArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() +} + +func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { + return i.ToJobDefinitionEvaluateOnExitOutputWithContext(context.Background()) +} + +func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitOutput) +} + +// JobDefinitionEvaluateOnExitArrayInput is an input type that accepts JobDefinitionEvaluateOnExitArray and JobDefinitionEvaluateOnExitArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEvaluateOnExitArrayInput` via: +// +// JobDefinitionEvaluateOnExitArray{ JobDefinitionEvaluateOnExitArgs{...} } +type JobDefinitionEvaluateOnExitArrayInput interface { + pulumi.Input + + ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput + ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Context) JobDefinitionEvaluateOnExitArrayOutput +} + +type JobDefinitionEvaluateOnExitArray []JobDefinitionEvaluateOnExitInput + +func (JobDefinitionEvaluateOnExitArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() +} + +func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { + return i.ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Background()) +} + +func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitArrayOutput) +} + +type JobDefinitionEvaluateOnExitOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEvaluateOnExitOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() +} + +func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { + return o +} + +func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { + return o +} + +// Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. +func (o JobDefinitionEvaluateOnExitOutput) Action() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) string { return v.Action }).(pulumi.StringOutput) +} + +// Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. +// +// The string can contain up to 512 characters. +func (o JobDefinitionEvaluateOnExitOutput) OnExitCode() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnExitCode }).(pulumi.StringPtrOutput) +} + +// Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. +func (o JobDefinitionEvaluateOnExitOutput) OnReason() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnReason }).(pulumi.StringPtrOutput) +} + +// Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. +func (o JobDefinitionEvaluateOnExitOutput) OnStatusReason() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnStatusReason }).(pulumi.StringPtrOutput) +} + +type JobDefinitionEvaluateOnExitArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEvaluateOnExitArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() +} + +func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { + return o +} + +func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { + return o +} + +func (o JobDefinitionEvaluateOnExitArrayOutput) Index(i pulumi.IntInput) JobDefinitionEvaluateOnExitOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEvaluateOnExit { + return vs[0].([]JobDefinitionEvaluateOnExit)[vs[1].(int)] + }).(JobDefinitionEvaluateOnExitOutput) +} + +type JobDefinitionHost struct { + // The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + // + // > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. + SourcePath *string `pulumi:"sourcePath"` +} + +// JobDefinitionHostInput is an input type that accepts JobDefinitionHostArgs and JobDefinitionHostOutput values. +// You can construct a concrete instance of `JobDefinitionHostInput` via: +// +// JobDefinitionHostArgs{...} +type JobDefinitionHostInput interface { + pulumi.Input + + ToJobDefinitionHostOutput() JobDefinitionHostOutput + ToJobDefinitionHostOutputWithContext(context.Context) JobDefinitionHostOutput +} + +type JobDefinitionHostArgs struct { + // The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + // + // > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. + SourcePath pulumi.StringPtrInput `pulumi:"sourcePath"` +} + +func (JobDefinitionHostArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionHost)(nil)).Elem() +} + +func (i JobDefinitionHostArgs) ToJobDefinitionHostOutput() JobDefinitionHostOutput { + return i.ToJobDefinitionHostOutputWithContext(context.Background()) +} + +func (i JobDefinitionHostArgs) ToJobDefinitionHostOutputWithContext(ctx context.Context) JobDefinitionHostOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionHostOutput) +} + +func (i JobDefinitionHostArgs) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { + return i.ToJobDefinitionHostPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionHostArgs) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionHostOutput).ToJobDefinitionHostPtrOutputWithContext(ctx) +} + +// JobDefinitionHostPtrInput is an input type that accepts JobDefinitionHostArgs, JobDefinitionHostPtr and JobDefinitionHostPtrOutput values. +// You can construct a concrete instance of `JobDefinitionHostPtrInput` via: +// +// JobDefinitionHostArgs{...} +// +// or: +// +// nil +type JobDefinitionHostPtrInput interface { + pulumi.Input + + ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput + ToJobDefinitionHostPtrOutputWithContext(context.Context) JobDefinitionHostPtrOutput +} + +type jobDefinitionHostPtrType JobDefinitionHostArgs + +func JobDefinitionHostPtr(v *JobDefinitionHostArgs) JobDefinitionHostPtrInput { + return (*jobDefinitionHostPtrType)(v) +} + +func (*jobDefinitionHostPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionHost)(nil)).Elem() +} + +func (i *jobDefinitionHostPtrType) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { + return i.ToJobDefinitionHostPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionHostPtrType) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionHostPtrOutput) +} + +type JobDefinitionHostOutput struct{ *pulumi.OutputState } + +func (JobDefinitionHostOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionHost)(nil)).Elem() +} + +func (o JobDefinitionHostOutput) ToJobDefinitionHostOutput() JobDefinitionHostOutput { + return o +} + +func (o JobDefinitionHostOutput) ToJobDefinitionHostOutputWithContext(ctx context.Context) JobDefinitionHostOutput { + return o +} + +func (o JobDefinitionHostOutput) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { + return o.ToJobDefinitionHostPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionHostOutput) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionHost) *JobDefinitionHost { + return &v + }).(JobDefinitionHostPtrOutput) +} + +// The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. +// +// > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. +func (o JobDefinitionHostOutput) SourcePath() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionHost) *string { return v.SourcePath }).(pulumi.StringPtrOutput) +} + +type JobDefinitionHostPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionHostPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionHost)(nil)).Elem() +} + +func (o JobDefinitionHostPtrOutput) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { + return o +} + +func (o JobDefinitionHostPtrOutput) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { + return o +} + +func (o JobDefinitionHostPtrOutput) Elem() JobDefinitionHostOutput { + return o.ApplyT(func(v *JobDefinitionHost) JobDefinitionHost { + if v != nil { + return *v + } + var ret JobDefinitionHost + return ret + }).(JobDefinitionHostOutput) +} + +// The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. +// +// > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. +func (o JobDefinitionHostPtrOutput) SourcePath() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionHost) *string { + if v == nil { + return nil + } + return v.SourcePath }).(pulumi.StringPtrOutput) } type JobDefinitionImagePullSecret struct { // Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. - Name string `pulumi:"name"` + Name *string `pulumi:"name"` } // JobDefinitionImagePullSecretInput is an input type that accepts JobDefinitionImagePullSecretArgs and JobDefinitionImagePullSecretOutput values. @@ -5308,7 +5885,7 @@ type JobDefinitionImagePullSecretInput interface { type JobDefinitionImagePullSecretArgs struct { // Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. - Name pulumi.StringInput `pulumi:"name"` + Name pulumi.StringPtrInput `pulumi:"name"` } func (JobDefinitionImagePullSecretArgs) ElementType() reflect.Type { @@ -5363,8 +5940,8 @@ func (o JobDefinitionImagePullSecretOutput) ToJobDefinitionImagePullSecretOutput } // Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. -func (o JobDefinitionImagePullSecretOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionImagePullSecret) string { return v.Name }).(pulumi.StringOutput) +func (o JobDefinitionImagePullSecretOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionImagePullSecret) *string { return v.Name }).(pulumi.StringPtrOutput) } type JobDefinitionImagePullSecretArrayOutput struct{ *pulumi.OutputState } @@ -5381,10 +5958,163 @@ func (o JobDefinitionImagePullSecretArrayOutput) ToJobDefinitionImagePullSecretA return o } -func (o JobDefinitionImagePullSecretArrayOutput) Index(i pulumi.IntInput) JobDefinitionImagePullSecretOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionImagePullSecret { - return vs[0].([]JobDefinitionImagePullSecret)[vs[1].(int)] - }).(JobDefinitionImagePullSecretOutput) +func (o JobDefinitionImagePullSecretArrayOutput) Index(i pulumi.IntInput) JobDefinitionImagePullSecretOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionImagePullSecret { + return vs[0].([]JobDefinitionImagePullSecret)[vs[1].(int)] + }).(JobDefinitionImagePullSecretOutput) +} + +type JobDefinitionJobTimeout struct { + // The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + // + // For array jobs, the timeout applies to the child jobs, not to the parent array job. + // + // For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + AttemptDurationSeconds *int `pulumi:"attemptDurationSeconds"` +} + +// JobDefinitionJobTimeoutInput is an input type that accepts JobDefinitionJobTimeoutArgs and JobDefinitionJobTimeoutOutput values. +// You can construct a concrete instance of `JobDefinitionJobTimeoutInput` via: +// +// JobDefinitionJobTimeoutArgs{...} +type JobDefinitionJobTimeoutInput interface { + pulumi.Input + + ToJobDefinitionJobTimeoutOutput() JobDefinitionJobTimeoutOutput + ToJobDefinitionJobTimeoutOutputWithContext(context.Context) JobDefinitionJobTimeoutOutput +} + +type JobDefinitionJobTimeoutArgs struct { + // The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + // + // For array jobs, the timeout applies to the child jobs, not to the parent array job. + // + // For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + AttemptDurationSeconds pulumi.IntPtrInput `pulumi:"attemptDurationSeconds"` +} + +func (JobDefinitionJobTimeoutArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionJobTimeout)(nil)).Elem() +} + +func (i JobDefinitionJobTimeoutArgs) ToJobDefinitionJobTimeoutOutput() JobDefinitionJobTimeoutOutput { + return i.ToJobDefinitionJobTimeoutOutputWithContext(context.Background()) +} + +func (i JobDefinitionJobTimeoutArgs) ToJobDefinitionJobTimeoutOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionJobTimeoutOutput) +} + +func (i JobDefinitionJobTimeoutArgs) ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput { + return i.ToJobDefinitionJobTimeoutPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionJobTimeoutArgs) ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionJobTimeoutOutput).ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx) +} + +// JobDefinitionJobTimeoutPtrInput is an input type that accepts JobDefinitionJobTimeoutArgs, JobDefinitionJobTimeoutPtr and JobDefinitionJobTimeoutPtrOutput values. +// You can construct a concrete instance of `JobDefinitionJobTimeoutPtrInput` via: +// +// JobDefinitionJobTimeoutArgs{...} +// +// or: +// +// nil +type JobDefinitionJobTimeoutPtrInput interface { + pulumi.Input + + ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput + ToJobDefinitionJobTimeoutPtrOutputWithContext(context.Context) JobDefinitionJobTimeoutPtrOutput +} + +type jobDefinitionJobTimeoutPtrType JobDefinitionJobTimeoutArgs + +func JobDefinitionJobTimeoutPtr(v *JobDefinitionJobTimeoutArgs) JobDefinitionJobTimeoutPtrInput { + return (*jobDefinitionJobTimeoutPtrType)(v) +} + +func (*jobDefinitionJobTimeoutPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionJobTimeout)(nil)).Elem() +} + +func (i *jobDefinitionJobTimeoutPtrType) ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput { + return i.ToJobDefinitionJobTimeoutPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionJobTimeoutPtrType) ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionJobTimeoutPtrOutput) +} + +type JobDefinitionJobTimeoutOutput struct{ *pulumi.OutputState } + +func (JobDefinitionJobTimeoutOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionJobTimeout)(nil)).Elem() +} + +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutOutput() JobDefinitionJobTimeoutOutput { + return o +} + +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutOutput { + return o +} + +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput { + return o.ToJobDefinitionJobTimeoutPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionJobTimeout) *JobDefinitionJobTimeout { + return &v + }).(JobDefinitionJobTimeoutPtrOutput) +} + +// The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. +// +// For array jobs, the timeout applies to the child jobs, not to the parent array job. +// +// For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. +func (o JobDefinitionJobTimeoutOutput) AttemptDurationSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionJobTimeout) *int { return v.AttemptDurationSeconds }).(pulumi.IntPtrOutput) +} + +type JobDefinitionJobTimeoutPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionJobTimeoutPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionJobTimeout)(nil)).Elem() +} + +func (o JobDefinitionJobTimeoutPtrOutput) ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput { + return o +} + +func (o JobDefinitionJobTimeoutPtrOutput) ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutPtrOutput { + return o +} + +func (o JobDefinitionJobTimeoutPtrOutput) Elem() JobDefinitionJobTimeoutOutput { + return o.ApplyT(func(v *JobDefinitionJobTimeout) JobDefinitionJobTimeout { + if v != nil { + return *v + } + var ret JobDefinitionJobTimeout + return ret + }).(JobDefinitionJobTimeoutOutput) +} + +// The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. +// +// For array jobs, the timeout applies to the child jobs, not to the parent array job. +// +// For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. +func (o JobDefinitionJobTimeoutPtrOutput) AttemptDurationSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionJobTimeout) *int { + if v == nil { + return nil + } + return v.AttemptDurationSeconds + }).(pulumi.IntPtrOutput) } type JobDefinitionLinuxParameters struct { @@ -5719,7 +6449,7 @@ type JobDefinitionLogConfiguration struct { // This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` LogDriver string `pulumi:"logDriver"` // The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` - Options interface{} `pulumi:"options"` + Options map[string]string `pulumi:"options"` // The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . SecretOptions []JobDefinitionSecret `pulumi:"secretOptions"` } @@ -5755,439 +6485,1008 @@ type JobDefinitionLogConfigurationArgs struct { // This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` LogDriver pulumi.StringInput `pulumi:"logDriver"` // The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` - Options pulumi.Input `pulumi:"options"` + Options pulumi.StringMapInput `pulumi:"options"` // The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . SecretOptions JobDefinitionSecretArrayInput `pulumi:"secretOptions"` } -func (JobDefinitionLogConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionLogConfiguration)(nil)).Elem() +func (JobDefinitionLogConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionLogConfiguration)(nil)).Elem() +} + +func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationOutput() JobDefinitionLogConfigurationOutput { + return i.ToJobDefinitionLogConfigurationOutputWithContext(context.Background()) +} + +func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationOutput) +} + +func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { + return i.ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationOutput).ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx) +} + +// JobDefinitionLogConfigurationPtrInput is an input type that accepts JobDefinitionLogConfigurationArgs, JobDefinitionLogConfigurationPtr and JobDefinitionLogConfigurationPtrOutput values. +// You can construct a concrete instance of `JobDefinitionLogConfigurationPtrInput` via: +// +// JobDefinitionLogConfigurationArgs{...} +// +// or: +// +// nil +type JobDefinitionLogConfigurationPtrInput interface { + pulumi.Input + + ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput + ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Context) JobDefinitionLogConfigurationPtrOutput +} + +type jobDefinitionLogConfigurationPtrType JobDefinitionLogConfigurationArgs + +func JobDefinitionLogConfigurationPtr(v *JobDefinitionLogConfigurationArgs) JobDefinitionLogConfigurationPtrInput { + return (*jobDefinitionLogConfigurationPtrType)(v) +} + +func (*jobDefinitionLogConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionLogConfiguration)(nil)).Elem() +} + +func (i *jobDefinitionLogConfigurationPtrType) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { + return i.ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionLogConfigurationPtrType) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationPtrOutput) +} + +type JobDefinitionLogConfigurationOutput struct{ *pulumi.OutputState } + +func (JobDefinitionLogConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionLogConfiguration)(nil)).Elem() +} + +func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationOutput() JobDefinitionLogConfigurationOutput { + return o +} + +func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationOutput { + return o +} + +func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { + return o.ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionLogConfiguration) *JobDefinitionLogConfiguration { + return &v + }).(JobDefinitionLogConfigurationPtrOutput) +} + +// The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. +// +// The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . +// +// > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. +// +// - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. +// - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . +// - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . +// - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . +// - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . +// - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . +// - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . +// +// > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. +// +// This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` +func (o JobDefinitionLogConfigurationOutput) LogDriver() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionLogConfiguration) string { return v.LogDriver }).(pulumi.StringOutput) +} + +// The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` +func (o JobDefinitionLogConfigurationOutput) Options() pulumi.StringMapOutput { + return o.ApplyT(func(v JobDefinitionLogConfiguration) map[string]string { return v.Options }).(pulumi.StringMapOutput) +} + +// The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . +func (o JobDefinitionLogConfigurationOutput) SecretOptions() JobDefinitionSecretArrayOutput { + return o.ApplyT(func(v JobDefinitionLogConfiguration) []JobDefinitionSecret { return v.SecretOptions }).(JobDefinitionSecretArrayOutput) +} + +type JobDefinitionLogConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionLogConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionLogConfiguration)(nil)).Elem() +} + +func (o JobDefinitionLogConfigurationPtrOutput) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { + return o +} + +func (o JobDefinitionLogConfigurationPtrOutput) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { + return o +} + +func (o JobDefinitionLogConfigurationPtrOutput) Elem() JobDefinitionLogConfigurationOutput { + return o.ApplyT(func(v *JobDefinitionLogConfiguration) JobDefinitionLogConfiguration { + if v != nil { + return *v + } + var ret JobDefinitionLogConfiguration + return ret + }).(JobDefinitionLogConfigurationOutput) +} + +// The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. +// +// The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . +// +// > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. +// +// - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. +// - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . +// - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . +// - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . +// - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . +// - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . +// - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . +// +// > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. +// +// This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` +func (o JobDefinitionLogConfigurationPtrOutput) LogDriver() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionLogConfiguration) *string { + if v == nil { + return nil + } + return &v.LogDriver + }).(pulumi.StringPtrOutput) +} + +// The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` +func (o JobDefinitionLogConfigurationPtrOutput) Options() pulumi.StringMapOutput { + return o.ApplyT(func(v *JobDefinitionLogConfiguration) map[string]string { + if v == nil { + return nil + } + return v.Options + }).(pulumi.StringMapOutput) +} + +// The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . +func (o JobDefinitionLogConfigurationPtrOutput) SecretOptions() JobDefinitionSecretArrayOutput { + return o.ApplyT(func(v *JobDefinitionLogConfiguration) []JobDefinitionSecret { + if v == nil { + return nil + } + return v.SecretOptions + }).(JobDefinitionSecretArrayOutput) +} + +type JobDefinitionMountPoint struct { + // The path on the container where the host volume is mounted. + ContainerPath *string `pulumi:"containerPath"` + // If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . + ReadOnly *bool `pulumi:"readOnly"` + // The name of the volume to mount. + SourceVolume *string `pulumi:"sourceVolume"` +} + +// JobDefinitionMountPointInput is an input type that accepts JobDefinitionMountPointArgs and JobDefinitionMountPointOutput values. +// You can construct a concrete instance of `JobDefinitionMountPointInput` via: +// +// JobDefinitionMountPointArgs{...} +type JobDefinitionMountPointInput interface { + pulumi.Input + + ToJobDefinitionMountPointOutput() JobDefinitionMountPointOutput + ToJobDefinitionMountPointOutputWithContext(context.Context) JobDefinitionMountPointOutput +} + +type JobDefinitionMountPointArgs struct { + // The path on the container where the host volume is mounted. + ContainerPath pulumi.StringPtrInput `pulumi:"containerPath"` + // If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . + ReadOnly pulumi.BoolPtrInput `pulumi:"readOnly"` + // The name of the volume to mount. + SourceVolume pulumi.StringPtrInput `pulumi:"sourceVolume"` +} + +func (JobDefinitionMountPointArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMountPoint)(nil)).Elem() +} + +func (i JobDefinitionMountPointArgs) ToJobDefinitionMountPointOutput() JobDefinitionMountPointOutput { + return i.ToJobDefinitionMountPointOutputWithContext(context.Background()) +} + +func (i JobDefinitionMountPointArgs) ToJobDefinitionMountPointOutputWithContext(ctx context.Context) JobDefinitionMountPointOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointOutput) +} + +// JobDefinitionMountPointArrayInput is an input type that accepts JobDefinitionMountPointArray and JobDefinitionMountPointArrayOutput values. +// You can construct a concrete instance of `JobDefinitionMountPointArrayInput` via: +// +// JobDefinitionMountPointArray{ JobDefinitionMountPointArgs{...} } +type JobDefinitionMountPointArrayInput interface { + pulumi.Input + + ToJobDefinitionMountPointArrayOutput() JobDefinitionMountPointArrayOutput + ToJobDefinitionMountPointArrayOutputWithContext(context.Context) JobDefinitionMountPointArrayOutput +} + +type JobDefinitionMountPointArray []JobDefinitionMountPointInput + +func (JobDefinitionMountPointArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionMountPoint)(nil)).Elem() +} + +func (i JobDefinitionMountPointArray) ToJobDefinitionMountPointArrayOutput() JobDefinitionMountPointArrayOutput { + return i.ToJobDefinitionMountPointArrayOutputWithContext(context.Background()) +} + +func (i JobDefinitionMountPointArray) ToJobDefinitionMountPointArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointArrayOutput) +} + +type JobDefinitionMountPointOutput struct{ *pulumi.OutputState } + +func (JobDefinitionMountPointOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMountPoint)(nil)).Elem() +} + +func (o JobDefinitionMountPointOutput) ToJobDefinitionMountPointOutput() JobDefinitionMountPointOutput { + return o +} + +func (o JobDefinitionMountPointOutput) ToJobDefinitionMountPointOutputWithContext(ctx context.Context) JobDefinitionMountPointOutput { + return o +} + +// The path on the container where the host volume is mounted. +func (o JobDefinitionMountPointOutput) ContainerPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMountPoint) *string { return v.ContainerPath }).(pulumi.StringPtrOutput) +} + +// If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . +func (o JobDefinitionMountPointOutput) ReadOnly() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionMountPoint) *bool { return v.ReadOnly }).(pulumi.BoolPtrOutput) +} + +// The name of the volume to mount. +func (o JobDefinitionMountPointOutput) SourceVolume() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMountPoint) *string { return v.SourceVolume }).(pulumi.StringPtrOutput) +} + +type JobDefinitionMountPointArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionMountPointArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionMountPoint)(nil)).Elem() +} + +func (o JobDefinitionMountPointArrayOutput) ToJobDefinitionMountPointArrayOutput() JobDefinitionMountPointArrayOutput { + return o +} + +func (o JobDefinitionMountPointArrayOutput) ToJobDefinitionMountPointArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointArrayOutput { + return o +} + +func (o JobDefinitionMountPointArrayOutput) Index(i pulumi.IntInput) JobDefinitionMountPointOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionMountPoint { + return vs[0].([]JobDefinitionMountPoint)[vs[1].(int)] + }).(JobDefinitionMountPointOutput) +} + +type JobDefinitionMultiNodeContainerProperties struct { + Command []string `pulumi:"command"` + Environment []JobDefinitionEnvironment `pulumi:"environment"` + EphemeralStorage *JobDefinitionEphemeralStorage `pulumi:"ephemeralStorage"` + ExecutionRoleArn *string `pulumi:"executionRoleArn"` + Image string `pulumi:"image"` + InstanceType *string `pulumi:"instanceType"` + JobRoleArn *string `pulumi:"jobRoleArn"` + LinuxParameters *JobDefinitionLinuxParameters `pulumi:"linuxParameters"` + LogConfiguration *JobDefinitionLogConfiguration `pulumi:"logConfiguration"` + Memory *int `pulumi:"memory"` + MountPoints []JobDefinitionMountPoint `pulumi:"mountPoints"` + Privileged *bool `pulumi:"privileged"` + ReadonlyRootFilesystem *bool `pulumi:"readonlyRootFilesystem"` + RepositoryCredentials *JobDefinitionRepositoryCredentials `pulumi:"repositoryCredentials"` + ResourceRequirements []JobDefinitionResourceRequirement `pulumi:"resourceRequirements"` + RuntimePlatform *JobDefinitionRuntimePlatform `pulumi:"runtimePlatform"` + Secrets []JobDefinitionSecret `pulumi:"secrets"` + Ulimits []JobDefinitionUlimit `pulumi:"ulimits"` + User *string `pulumi:"user"` + Vcpus *int `pulumi:"vcpus"` + Volumes []JobDefinitionVolume `pulumi:"volumes"` } -func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationOutput() JobDefinitionLogConfigurationOutput { - return i.ToJobDefinitionLogConfigurationOutputWithContext(context.Background()) +// JobDefinitionMultiNodeContainerPropertiesInput is an input type that accepts JobDefinitionMultiNodeContainerPropertiesArgs and JobDefinitionMultiNodeContainerPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionMultiNodeContainerPropertiesInput` via: +// +// JobDefinitionMultiNodeContainerPropertiesArgs{...} +type JobDefinitionMultiNodeContainerPropertiesInput interface { + pulumi.Input + + ToJobDefinitionMultiNodeContainerPropertiesOutput() JobDefinitionMultiNodeContainerPropertiesOutput + ToJobDefinitionMultiNodeContainerPropertiesOutputWithContext(context.Context) JobDefinitionMultiNodeContainerPropertiesOutput } -func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationOutput) +type JobDefinitionMultiNodeContainerPropertiesArgs struct { + Command pulumi.StringArrayInput `pulumi:"command"` + Environment JobDefinitionEnvironmentArrayInput `pulumi:"environment"` + EphemeralStorage JobDefinitionEphemeralStoragePtrInput `pulumi:"ephemeralStorage"` + ExecutionRoleArn pulumi.StringPtrInput `pulumi:"executionRoleArn"` + Image pulumi.StringInput `pulumi:"image"` + InstanceType pulumi.StringPtrInput `pulumi:"instanceType"` + JobRoleArn pulumi.StringPtrInput `pulumi:"jobRoleArn"` + LinuxParameters JobDefinitionLinuxParametersPtrInput `pulumi:"linuxParameters"` + LogConfiguration JobDefinitionLogConfigurationPtrInput `pulumi:"logConfiguration"` + Memory pulumi.IntPtrInput `pulumi:"memory"` + MountPoints JobDefinitionMountPointArrayInput `pulumi:"mountPoints"` + Privileged pulumi.BoolPtrInput `pulumi:"privileged"` + ReadonlyRootFilesystem pulumi.BoolPtrInput `pulumi:"readonlyRootFilesystem"` + RepositoryCredentials JobDefinitionRepositoryCredentialsPtrInput `pulumi:"repositoryCredentials"` + ResourceRequirements JobDefinitionResourceRequirementArrayInput `pulumi:"resourceRequirements"` + RuntimePlatform JobDefinitionRuntimePlatformPtrInput `pulumi:"runtimePlatform"` + Secrets JobDefinitionSecretArrayInput `pulumi:"secrets"` + Ulimits JobDefinitionUlimitArrayInput `pulumi:"ulimits"` + User pulumi.StringPtrInput `pulumi:"user"` + Vcpus pulumi.IntPtrInput `pulumi:"vcpus"` + Volumes JobDefinitionVolumeArrayInput `pulumi:"volumes"` } -func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { - return i.ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Background()) +func (JobDefinitionMultiNodeContainerPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMultiNodeContainerProperties)(nil)).Elem() } -func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationOutput).ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx) +func (i JobDefinitionMultiNodeContainerPropertiesArgs) ToJobDefinitionMultiNodeContainerPropertiesOutput() JobDefinitionMultiNodeContainerPropertiesOutput { + return i.ToJobDefinitionMultiNodeContainerPropertiesOutputWithContext(context.Background()) } -// JobDefinitionLogConfigurationPtrInput is an input type that accepts JobDefinitionLogConfigurationArgs, JobDefinitionLogConfigurationPtr and JobDefinitionLogConfigurationPtrOutput values. -// You can construct a concrete instance of `JobDefinitionLogConfigurationPtrInput` via: +func (i JobDefinitionMultiNodeContainerPropertiesArgs) ToJobDefinitionMultiNodeContainerPropertiesOutputWithContext(ctx context.Context) JobDefinitionMultiNodeContainerPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeContainerPropertiesOutput) +} + +func (i JobDefinitionMultiNodeContainerPropertiesArgs) ToJobDefinitionMultiNodeContainerPropertiesPtrOutput() JobDefinitionMultiNodeContainerPropertiesPtrOutput { + return i.ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionMultiNodeContainerPropertiesArgs) ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeContainerPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeContainerPropertiesOutput).ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(ctx) +} + +// JobDefinitionMultiNodeContainerPropertiesPtrInput is an input type that accepts JobDefinitionMultiNodeContainerPropertiesArgs, JobDefinitionMultiNodeContainerPropertiesPtr and JobDefinitionMultiNodeContainerPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionMultiNodeContainerPropertiesPtrInput` via: // -// JobDefinitionLogConfigurationArgs{...} +// JobDefinitionMultiNodeContainerPropertiesArgs{...} // // or: // // nil -type JobDefinitionLogConfigurationPtrInput interface { +type JobDefinitionMultiNodeContainerPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput - ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Context) JobDefinitionLogConfigurationPtrOutput + ToJobDefinitionMultiNodeContainerPropertiesPtrOutput() JobDefinitionMultiNodeContainerPropertiesPtrOutput + ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(context.Context) JobDefinitionMultiNodeContainerPropertiesPtrOutput } -type jobDefinitionLogConfigurationPtrType JobDefinitionLogConfigurationArgs +type jobDefinitionMultiNodeContainerPropertiesPtrType JobDefinitionMultiNodeContainerPropertiesArgs -func JobDefinitionLogConfigurationPtr(v *JobDefinitionLogConfigurationArgs) JobDefinitionLogConfigurationPtrInput { - return (*jobDefinitionLogConfigurationPtrType)(v) +func JobDefinitionMultiNodeContainerPropertiesPtr(v *JobDefinitionMultiNodeContainerPropertiesArgs) JobDefinitionMultiNodeContainerPropertiesPtrInput { + return (*jobDefinitionMultiNodeContainerPropertiesPtrType)(v) } -func (*jobDefinitionLogConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionLogConfiguration)(nil)).Elem() +func (*jobDefinitionMultiNodeContainerPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionMultiNodeContainerProperties)(nil)).Elem() } -func (i *jobDefinitionLogConfigurationPtrType) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { - return i.ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Background()) +func (i *jobDefinitionMultiNodeContainerPropertiesPtrType) ToJobDefinitionMultiNodeContainerPropertiesPtrOutput() JobDefinitionMultiNodeContainerPropertiesPtrOutput { + return i.ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionLogConfigurationPtrType) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationPtrOutput) +func (i *jobDefinitionMultiNodeContainerPropertiesPtrType) ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeContainerPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeContainerPropertiesPtrOutput) } -type JobDefinitionLogConfigurationOutput struct{ *pulumi.OutputState } +type JobDefinitionMultiNodeContainerPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionLogConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionLogConfiguration)(nil)).Elem() +func (JobDefinitionMultiNodeContainerPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMultiNodeContainerProperties)(nil)).Elem() } -func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationOutput() JobDefinitionLogConfigurationOutput { +func (o JobDefinitionMultiNodeContainerPropertiesOutput) ToJobDefinitionMultiNodeContainerPropertiesOutput() JobDefinitionMultiNodeContainerPropertiesOutput { return o } -func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationOutput { +func (o JobDefinitionMultiNodeContainerPropertiesOutput) ToJobDefinitionMultiNodeContainerPropertiesOutputWithContext(ctx context.Context) JobDefinitionMultiNodeContainerPropertiesOutput { return o } -func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { - return o.ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Background()) +func (o JobDefinitionMultiNodeContainerPropertiesOutput) ToJobDefinitionMultiNodeContainerPropertiesPtrOutput() JobDefinitionMultiNodeContainerPropertiesPtrOutput { + return o.ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionLogConfiguration) *JobDefinitionLogConfiguration { +func (o JobDefinitionMultiNodeContainerPropertiesOutput) ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeContainerPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionMultiNodeContainerProperties) *JobDefinitionMultiNodeContainerProperties { return &v + }).(JobDefinitionMultiNodeContainerPropertiesPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Command() pulumi.StringArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) []string { return v.Command }).(pulumi.StringArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Environment() JobDefinitionEnvironmentArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) []JobDefinitionEnvironment { return v.Environment }).(JobDefinitionEnvironmentArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) EphemeralStorage() JobDefinitionEphemeralStoragePtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *JobDefinitionEphemeralStorage { + return v.EphemeralStorage + }).(JobDefinitionEphemeralStoragePtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) ExecutionRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *string { return v.ExecutionRoleArn }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Image() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) string { return v.Image }).(pulumi.StringOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) InstanceType() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *string { return v.InstanceType }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) JobRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *string { return v.JobRoleArn }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) LinuxParameters() JobDefinitionLinuxParametersPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *JobDefinitionLinuxParameters { + return v.LinuxParameters + }).(JobDefinitionLinuxParametersPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) LogConfiguration() JobDefinitionLogConfigurationPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *JobDefinitionLogConfiguration { + return v.LogConfiguration }).(JobDefinitionLogConfigurationPtrOutput) } -// The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. -// -// The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . -// -// > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. -// -// - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. -// - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . -// - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . -// - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . -// - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . -// - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . -// - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . -// -// > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. -// -// This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` -func (o JobDefinitionLogConfigurationOutput) LogDriver() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionLogConfiguration) string { return v.LogDriver }).(pulumi.StringOutput) +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Memory() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *int { return v.Memory }).(pulumi.IntPtrOutput) } -// The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` -func (o JobDefinitionLogConfigurationOutput) Options() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionLogConfiguration) interface{} { return v.Options }).(pulumi.AnyOutput) +func (o JobDefinitionMultiNodeContainerPropertiesOutput) MountPoints() JobDefinitionMountPointArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) []JobDefinitionMountPoint { return v.MountPoints }).(JobDefinitionMountPointArrayOutput) } -// The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . -func (o JobDefinitionLogConfigurationOutput) SecretOptions() JobDefinitionSecretArrayOutput { - return o.ApplyT(func(v JobDefinitionLogConfiguration) []JobDefinitionSecret { return v.SecretOptions }).(JobDefinitionSecretArrayOutput) +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Privileged() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *bool { return v.Privileged }).(pulumi.BoolPtrOutput) } -type JobDefinitionLogConfigurationPtrOutput struct{ *pulumi.OutputState } +func (o JobDefinitionMultiNodeContainerPropertiesOutput) ReadonlyRootFilesystem() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *bool { return v.ReadonlyRootFilesystem }).(pulumi.BoolPtrOutput) +} -func (JobDefinitionLogConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionLogConfiguration)(nil)).Elem() +func (o JobDefinitionMultiNodeContainerPropertiesOutput) RepositoryCredentials() JobDefinitionRepositoryCredentialsPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *JobDefinitionRepositoryCredentials { + return v.RepositoryCredentials + }).(JobDefinitionRepositoryCredentialsPtrOutput) } -func (o JobDefinitionLogConfigurationPtrOutput) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { +func (o JobDefinitionMultiNodeContainerPropertiesOutput) ResourceRequirements() JobDefinitionResourceRequirementArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) []JobDefinitionResourceRequirement { + return v.ResourceRequirements + }).(JobDefinitionResourceRequirementArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) RuntimePlatform() JobDefinitionRuntimePlatformPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *JobDefinitionRuntimePlatform { + return v.RuntimePlatform + }).(JobDefinitionRuntimePlatformPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Secrets() JobDefinitionSecretArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) []JobDefinitionSecret { return v.Secrets }).(JobDefinitionSecretArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Ulimits() JobDefinitionUlimitArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) []JobDefinitionUlimit { return v.Ulimits }).(JobDefinitionUlimitArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *string { return v.User }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Vcpus() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) *int { return v.Vcpus }).(pulumi.IntPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesOutput) Volumes() JobDefinitionVolumeArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeContainerProperties) []JobDefinitionVolume { return v.Volumes }).(JobDefinitionVolumeArrayOutput) +} + +type JobDefinitionMultiNodeContainerPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionMultiNodeContainerPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionMultiNodeContainerProperties)(nil)).Elem() +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) ToJobDefinitionMultiNodeContainerPropertiesPtrOutput() JobDefinitionMultiNodeContainerPropertiesPtrOutput { return o } -func (o JobDefinitionLogConfigurationPtrOutput) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) ToJobDefinitionMultiNodeContainerPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeContainerPropertiesPtrOutput { return o } -func (o JobDefinitionLogConfigurationPtrOutput) Elem() JobDefinitionLogConfigurationOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) JobDefinitionLogConfiguration { +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Elem() JobDefinitionMultiNodeContainerPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) JobDefinitionMultiNodeContainerProperties { if v != nil { return *v } - var ret JobDefinitionLogConfiguration + var ret JobDefinitionMultiNodeContainerProperties return ret - }).(JobDefinitionLogConfigurationOutput) + }).(JobDefinitionMultiNodeContainerPropertiesOutput) } -// The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. -// -// The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . -// -// > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. -// -// - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. -// - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . -// - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . -// - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . -// - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . -// - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . -// - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . -// -// > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. -// -// This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` -func (o JobDefinitionLogConfigurationPtrOutput) LogDriver() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) *string { +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Command() pulumi.StringArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) []string { + if v == nil { + return nil + } + return v.Command + }).(pulumi.StringArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Environment() JobDefinitionEnvironmentArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) []JobDefinitionEnvironment { + if v == nil { + return nil + } + return v.Environment + }).(JobDefinitionEnvironmentArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) EphemeralStorage() JobDefinitionEphemeralStoragePtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *JobDefinitionEphemeralStorage { + if v == nil { + return nil + } + return v.EphemeralStorage + }).(JobDefinitionEphemeralStoragePtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) ExecutionRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *string { + if v == nil { + return nil + } + return v.ExecutionRoleArn + }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Image() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *string { + if v == nil { + return nil + } + return &v.Image + }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) InstanceType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *string { + if v == nil { + return nil + } + return v.InstanceType + }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) JobRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *string { + if v == nil { + return nil + } + return v.JobRoleArn + }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) LinuxParameters() JobDefinitionLinuxParametersPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *JobDefinitionLinuxParameters { + if v == nil { + return nil + } + return v.LinuxParameters + }).(JobDefinitionLinuxParametersPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) LogConfiguration() JobDefinitionLogConfigurationPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *JobDefinitionLogConfiguration { + if v == nil { + return nil + } + return v.LogConfiguration + }).(JobDefinitionLogConfigurationPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Memory() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *int { + if v == nil { + return nil + } + return v.Memory + }).(pulumi.IntPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) MountPoints() JobDefinitionMountPointArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) []JobDefinitionMountPoint { + if v == nil { + return nil + } + return v.MountPoints + }).(JobDefinitionMountPointArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Privileged() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *bool { + if v == nil { + return nil + } + return v.Privileged + }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) ReadonlyRootFilesystem() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *bool { + if v == nil { + return nil + } + return v.ReadonlyRootFilesystem + }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) RepositoryCredentials() JobDefinitionRepositoryCredentialsPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *JobDefinitionRepositoryCredentials { + if v == nil { + return nil + } + return v.RepositoryCredentials + }).(JobDefinitionRepositoryCredentialsPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) ResourceRequirements() JobDefinitionResourceRequirementArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) []JobDefinitionResourceRequirement { + if v == nil { + return nil + } + return v.ResourceRequirements + }).(JobDefinitionResourceRequirementArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) RuntimePlatform() JobDefinitionRuntimePlatformPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *JobDefinitionRuntimePlatform { + if v == nil { + return nil + } + return v.RuntimePlatform + }).(JobDefinitionRuntimePlatformPtrOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Secrets() JobDefinitionSecretArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) []JobDefinitionSecret { + if v == nil { + return nil + } + return v.Secrets + }).(JobDefinitionSecretArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Ulimits() JobDefinitionUlimitArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) []JobDefinitionUlimit { if v == nil { return nil } - return &v.LogDriver + return v.Ulimits + }).(JobDefinitionUlimitArrayOutput) +} + +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *string { + if v == nil { + return nil + } + return v.User }).(pulumi.StringPtrOutput) } -// The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` -func (o JobDefinitionLogConfigurationPtrOutput) Options() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) interface{} { +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Vcpus() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) *int { if v == nil { return nil } - return v.Options - }).(pulumi.AnyOutput) + return v.Vcpus + }).(pulumi.IntPtrOutput) } -// The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . -func (o JobDefinitionLogConfigurationPtrOutput) SecretOptions() JobDefinitionSecretArrayOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) []JobDefinitionSecret { +func (o JobDefinitionMultiNodeContainerPropertiesPtrOutput) Volumes() JobDefinitionVolumeArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeContainerProperties) []JobDefinitionVolume { if v == nil { return nil } - return v.SecretOptions - }).(JobDefinitionSecretArrayOutput) + return v.Volumes + }).(JobDefinitionVolumeArrayOutput) } -type JobDefinitionMetadata struct { - // Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. - Labels interface{} `pulumi:"labels"` +type JobDefinitionMultiNodeEcsProperties struct { + TaskProperties []JobDefinitionMultiNodeEcsTaskProperties `pulumi:"taskProperties"` } -// JobDefinitionMetadataInput is an input type that accepts JobDefinitionMetadataArgs and JobDefinitionMetadataOutput values. -// You can construct a concrete instance of `JobDefinitionMetadataInput` via: +// JobDefinitionMultiNodeEcsPropertiesInput is an input type that accepts JobDefinitionMultiNodeEcsPropertiesArgs and JobDefinitionMultiNodeEcsPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionMultiNodeEcsPropertiesInput` via: // -// JobDefinitionMetadataArgs{...} -type JobDefinitionMetadataInput interface { +// JobDefinitionMultiNodeEcsPropertiesArgs{...} +type JobDefinitionMultiNodeEcsPropertiesInput interface { pulumi.Input - ToJobDefinitionMetadataOutput() JobDefinitionMetadataOutput - ToJobDefinitionMetadataOutputWithContext(context.Context) JobDefinitionMetadataOutput + ToJobDefinitionMultiNodeEcsPropertiesOutput() JobDefinitionMultiNodeEcsPropertiesOutput + ToJobDefinitionMultiNodeEcsPropertiesOutputWithContext(context.Context) JobDefinitionMultiNodeEcsPropertiesOutput } -type JobDefinitionMetadataArgs struct { - // Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. - Labels pulumi.Input `pulumi:"labels"` +type JobDefinitionMultiNodeEcsPropertiesArgs struct { + TaskProperties JobDefinitionMultiNodeEcsTaskPropertiesArrayInput `pulumi:"taskProperties"` } -func (JobDefinitionMetadataArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMetadata)(nil)).Elem() +func (JobDefinitionMultiNodeEcsPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMultiNodeEcsProperties)(nil)).Elem() } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataOutput() JobDefinitionMetadataOutput { - return i.ToJobDefinitionMetadataOutputWithContext(context.Background()) +func (i JobDefinitionMultiNodeEcsPropertiesArgs) ToJobDefinitionMultiNodeEcsPropertiesOutput() JobDefinitionMultiNodeEcsPropertiesOutput { + return i.ToJobDefinitionMultiNodeEcsPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataOutputWithContext(ctx context.Context) JobDefinitionMetadataOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMetadataOutput) +func (i JobDefinitionMultiNodeEcsPropertiesArgs) ToJobDefinitionMultiNodeEcsPropertiesOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeEcsPropertiesOutput) } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { - return i.ToJobDefinitionMetadataPtrOutputWithContext(context.Background()) +func (i JobDefinitionMultiNodeEcsPropertiesArgs) ToJobDefinitionMultiNodeEcsPropertiesPtrOutput() JobDefinitionMultiNodeEcsPropertiesPtrOutput { + return i.ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMetadataOutput).ToJobDefinitionMetadataPtrOutputWithContext(ctx) +func (i JobDefinitionMultiNodeEcsPropertiesArgs) ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeEcsPropertiesOutput).ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(ctx) } -// JobDefinitionMetadataPtrInput is an input type that accepts JobDefinitionMetadataArgs, JobDefinitionMetadataPtr and JobDefinitionMetadataPtrOutput values. -// You can construct a concrete instance of `JobDefinitionMetadataPtrInput` via: +// JobDefinitionMultiNodeEcsPropertiesPtrInput is an input type that accepts JobDefinitionMultiNodeEcsPropertiesArgs, JobDefinitionMultiNodeEcsPropertiesPtr and JobDefinitionMultiNodeEcsPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionMultiNodeEcsPropertiesPtrInput` via: // -// JobDefinitionMetadataArgs{...} +// JobDefinitionMultiNodeEcsPropertiesArgs{...} // // or: // // nil -type JobDefinitionMetadataPtrInput interface { +type JobDefinitionMultiNodeEcsPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput - ToJobDefinitionMetadataPtrOutputWithContext(context.Context) JobDefinitionMetadataPtrOutput + ToJobDefinitionMultiNodeEcsPropertiesPtrOutput() JobDefinitionMultiNodeEcsPropertiesPtrOutput + ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(context.Context) JobDefinitionMultiNodeEcsPropertiesPtrOutput } -type jobDefinitionMetadataPtrType JobDefinitionMetadataArgs +type jobDefinitionMultiNodeEcsPropertiesPtrType JobDefinitionMultiNodeEcsPropertiesArgs -func JobDefinitionMetadataPtr(v *JobDefinitionMetadataArgs) JobDefinitionMetadataPtrInput { - return (*jobDefinitionMetadataPtrType)(v) +func JobDefinitionMultiNodeEcsPropertiesPtr(v *JobDefinitionMultiNodeEcsPropertiesArgs) JobDefinitionMultiNodeEcsPropertiesPtrInput { + return (*jobDefinitionMultiNodeEcsPropertiesPtrType)(v) } -func (*jobDefinitionMetadataPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionMetadata)(nil)).Elem() +func (*jobDefinitionMultiNodeEcsPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionMultiNodeEcsProperties)(nil)).Elem() } -func (i *jobDefinitionMetadataPtrType) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { - return i.ToJobDefinitionMetadataPtrOutputWithContext(context.Background()) +func (i *jobDefinitionMultiNodeEcsPropertiesPtrType) ToJobDefinitionMultiNodeEcsPropertiesPtrOutput() JobDefinitionMultiNodeEcsPropertiesPtrOutput { + return i.ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionMetadataPtrType) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMetadataPtrOutput) +func (i *jobDefinitionMultiNodeEcsPropertiesPtrType) ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeEcsPropertiesPtrOutput) } -type JobDefinitionMetadataOutput struct{ *pulumi.OutputState } +type JobDefinitionMultiNodeEcsPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionMetadataOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMetadata)(nil)).Elem() +func (JobDefinitionMultiNodeEcsPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMultiNodeEcsProperties)(nil)).Elem() } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataOutput() JobDefinitionMetadataOutput { +func (o JobDefinitionMultiNodeEcsPropertiesOutput) ToJobDefinitionMultiNodeEcsPropertiesOutput() JobDefinitionMultiNodeEcsPropertiesOutput { return o } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataOutputWithContext(ctx context.Context) JobDefinitionMetadataOutput { +func (o JobDefinitionMultiNodeEcsPropertiesOutput) ToJobDefinitionMultiNodeEcsPropertiesOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsPropertiesOutput { return o } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { - return o.ToJobDefinitionMetadataPtrOutputWithContext(context.Background()) +func (o JobDefinitionMultiNodeEcsPropertiesOutput) ToJobDefinitionMultiNodeEcsPropertiesPtrOutput() JobDefinitionMultiNodeEcsPropertiesPtrOutput { + return o.ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionMetadata) *JobDefinitionMetadata { +func (o JobDefinitionMultiNodeEcsPropertiesOutput) ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionMultiNodeEcsProperties) *JobDefinitionMultiNodeEcsProperties { return &v - }).(JobDefinitionMetadataPtrOutput) + }).(JobDefinitionMultiNodeEcsPropertiesPtrOutput) } -// Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. -func (o JobDefinitionMetadataOutput) Labels() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionMetadata) interface{} { return v.Labels }).(pulumi.AnyOutput) +func (o JobDefinitionMultiNodeEcsPropertiesOutput) TaskProperties() JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeEcsProperties) []JobDefinitionMultiNodeEcsTaskProperties { + return v.TaskProperties + }).(JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput) } -type JobDefinitionMetadataPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionMultiNodeEcsPropertiesPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionMetadataPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionMetadata)(nil)).Elem() +func (JobDefinitionMultiNodeEcsPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionMultiNodeEcsProperties)(nil)).Elem() } -func (o JobDefinitionMetadataPtrOutput) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { +func (o JobDefinitionMultiNodeEcsPropertiesPtrOutput) ToJobDefinitionMultiNodeEcsPropertiesPtrOutput() JobDefinitionMultiNodeEcsPropertiesPtrOutput { return o } -func (o JobDefinitionMetadataPtrOutput) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { +func (o JobDefinitionMultiNodeEcsPropertiesPtrOutput) ToJobDefinitionMultiNodeEcsPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsPropertiesPtrOutput { return o } -func (o JobDefinitionMetadataPtrOutput) Elem() JobDefinitionMetadataOutput { - return o.ApplyT(func(v *JobDefinitionMetadata) JobDefinitionMetadata { +func (o JobDefinitionMultiNodeEcsPropertiesPtrOutput) Elem() JobDefinitionMultiNodeEcsPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeEcsProperties) JobDefinitionMultiNodeEcsProperties { if v != nil { return *v } - var ret JobDefinitionMetadata + var ret JobDefinitionMultiNodeEcsProperties return ret - }).(JobDefinitionMetadataOutput) + }).(JobDefinitionMultiNodeEcsPropertiesOutput) } -// Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. -func (o JobDefinitionMetadataPtrOutput) Labels() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionMetadata) interface{} { +func (o JobDefinitionMultiNodeEcsPropertiesPtrOutput) TaskProperties() JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput { + return o.ApplyT(func(v *JobDefinitionMultiNodeEcsProperties) []JobDefinitionMultiNodeEcsTaskProperties { if v == nil { return nil } - return v.Labels - }).(pulumi.AnyOutput) + return v.TaskProperties + }).(JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput) } -type JobDefinitionMountPoints struct { - // The path on the container where the host volume is mounted. - ContainerPath *string `pulumi:"containerPath"` - // If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . - ReadOnly *bool `pulumi:"readOnly"` - // The name of the volume to mount. - SourceVolume *string `pulumi:"sourceVolume"` +type JobDefinitionMultiNodeEcsTaskProperties struct { + Containers []JobDefinitionTaskContainerProperties `pulumi:"containers"` + ExecutionRoleArn *string `pulumi:"executionRoleArn"` + IpcMode *string `pulumi:"ipcMode"` + PidMode *string `pulumi:"pidMode"` + TaskRoleArn *string `pulumi:"taskRoleArn"` + Volumes []JobDefinitionVolume `pulumi:"volumes"` } -// JobDefinitionMountPointsInput is an input type that accepts JobDefinitionMountPointsArgs and JobDefinitionMountPointsOutput values. -// You can construct a concrete instance of `JobDefinitionMountPointsInput` via: +// JobDefinitionMultiNodeEcsTaskPropertiesInput is an input type that accepts JobDefinitionMultiNodeEcsTaskPropertiesArgs and JobDefinitionMultiNodeEcsTaskPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionMultiNodeEcsTaskPropertiesInput` via: // -// JobDefinitionMountPointsArgs{...} -type JobDefinitionMountPointsInput interface { +// JobDefinitionMultiNodeEcsTaskPropertiesArgs{...} +type JobDefinitionMultiNodeEcsTaskPropertiesInput interface { pulumi.Input - ToJobDefinitionMountPointsOutput() JobDefinitionMountPointsOutput - ToJobDefinitionMountPointsOutputWithContext(context.Context) JobDefinitionMountPointsOutput + ToJobDefinitionMultiNodeEcsTaskPropertiesOutput() JobDefinitionMultiNodeEcsTaskPropertiesOutput + ToJobDefinitionMultiNodeEcsTaskPropertiesOutputWithContext(context.Context) JobDefinitionMultiNodeEcsTaskPropertiesOutput } -type JobDefinitionMountPointsArgs struct { - // The path on the container where the host volume is mounted. - ContainerPath pulumi.StringPtrInput `pulumi:"containerPath"` - // If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . - ReadOnly pulumi.BoolPtrInput `pulumi:"readOnly"` - // The name of the volume to mount. - SourceVolume pulumi.StringPtrInput `pulumi:"sourceVolume"` +type JobDefinitionMultiNodeEcsTaskPropertiesArgs struct { + Containers JobDefinitionTaskContainerPropertiesArrayInput `pulumi:"containers"` + ExecutionRoleArn pulumi.StringPtrInput `pulumi:"executionRoleArn"` + IpcMode pulumi.StringPtrInput `pulumi:"ipcMode"` + PidMode pulumi.StringPtrInput `pulumi:"pidMode"` + TaskRoleArn pulumi.StringPtrInput `pulumi:"taskRoleArn"` + Volumes JobDefinitionVolumeArrayInput `pulumi:"volumes"` } -func (JobDefinitionMountPointsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMountPoints)(nil)).Elem() +func (JobDefinitionMultiNodeEcsTaskPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMultiNodeEcsTaskProperties)(nil)).Elem() } -func (i JobDefinitionMountPointsArgs) ToJobDefinitionMountPointsOutput() JobDefinitionMountPointsOutput { - return i.ToJobDefinitionMountPointsOutputWithContext(context.Background()) +func (i JobDefinitionMultiNodeEcsTaskPropertiesArgs) ToJobDefinitionMultiNodeEcsTaskPropertiesOutput() JobDefinitionMultiNodeEcsTaskPropertiesOutput { + return i.ToJobDefinitionMultiNodeEcsTaskPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionMountPointsArgs) ToJobDefinitionMountPointsOutputWithContext(ctx context.Context) JobDefinitionMountPointsOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointsOutput) +func (i JobDefinitionMultiNodeEcsTaskPropertiesArgs) ToJobDefinitionMultiNodeEcsTaskPropertiesOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsTaskPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeEcsTaskPropertiesOutput) } -// JobDefinitionMountPointsArrayInput is an input type that accepts JobDefinitionMountPointsArray and JobDefinitionMountPointsArrayOutput values. -// You can construct a concrete instance of `JobDefinitionMountPointsArrayInput` via: +// JobDefinitionMultiNodeEcsTaskPropertiesArrayInput is an input type that accepts JobDefinitionMultiNodeEcsTaskPropertiesArray and JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput values. +// You can construct a concrete instance of `JobDefinitionMultiNodeEcsTaskPropertiesArrayInput` via: // -// JobDefinitionMountPointsArray{ JobDefinitionMountPointsArgs{...} } -type JobDefinitionMountPointsArrayInput interface { +// JobDefinitionMultiNodeEcsTaskPropertiesArray{ JobDefinitionMultiNodeEcsTaskPropertiesArgs{...} } +type JobDefinitionMultiNodeEcsTaskPropertiesArrayInput interface { pulumi.Input - ToJobDefinitionMountPointsArrayOutput() JobDefinitionMountPointsArrayOutput - ToJobDefinitionMountPointsArrayOutputWithContext(context.Context) JobDefinitionMountPointsArrayOutput + ToJobDefinitionMultiNodeEcsTaskPropertiesArrayOutput() JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput + ToJobDefinitionMultiNodeEcsTaskPropertiesArrayOutputWithContext(context.Context) JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput } -type JobDefinitionMountPointsArray []JobDefinitionMountPointsInput +type JobDefinitionMultiNodeEcsTaskPropertiesArray []JobDefinitionMultiNodeEcsTaskPropertiesInput -func (JobDefinitionMountPointsArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionMountPoints)(nil)).Elem() +func (JobDefinitionMultiNodeEcsTaskPropertiesArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionMultiNodeEcsTaskProperties)(nil)).Elem() } -func (i JobDefinitionMountPointsArray) ToJobDefinitionMountPointsArrayOutput() JobDefinitionMountPointsArrayOutput { - return i.ToJobDefinitionMountPointsArrayOutputWithContext(context.Background()) +func (i JobDefinitionMultiNodeEcsTaskPropertiesArray) ToJobDefinitionMultiNodeEcsTaskPropertiesArrayOutput() JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput { + return i.ToJobDefinitionMultiNodeEcsTaskPropertiesArrayOutputWithContext(context.Background()) } -func (i JobDefinitionMountPointsArray) ToJobDefinitionMountPointsArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointsArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointsArrayOutput) +func (i JobDefinitionMultiNodeEcsTaskPropertiesArray) ToJobDefinitionMultiNodeEcsTaskPropertiesArrayOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput) } -type JobDefinitionMountPointsOutput struct{ *pulumi.OutputState } +type JobDefinitionMultiNodeEcsTaskPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionMountPointsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMountPoints)(nil)).Elem() +func (JobDefinitionMultiNodeEcsTaskPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMultiNodeEcsTaskProperties)(nil)).Elem() } -func (o JobDefinitionMountPointsOutput) ToJobDefinitionMountPointsOutput() JobDefinitionMountPointsOutput { +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) ToJobDefinitionMultiNodeEcsTaskPropertiesOutput() JobDefinitionMultiNodeEcsTaskPropertiesOutput { return o } -func (o JobDefinitionMountPointsOutput) ToJobDefinitionMountPointsOutputWithContext(ctx context.Context) JobDefinitionMountPointsOutput { +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) ToJobDefinitionMultiNodeEcsTaskPropertiesOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsTaskPropertiesOutput { return o } -// The path on the container where the host volume is mounted. -func (o JobDefinitionMountPointsOutput) ContainerPath() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionMountPoints) *string { return v.ContainerPath }).(pulumi.StringPtrOutput) +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) Containers() JobDefinitionTaskContainerPropertiesArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeEcsTaskProperties) []JobDefinitionTaskContainerProperties { + return v.Containers + }).(JobDefinitionTaskContainerPropertiesArrayOutput) } -// If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . -func (o JobDefinitionMountPointsOutput) ReadOnly() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionMountPoints) *bool { return v.ReadOnly }).(pulumi.BoolPtrOutput) +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) ExecutionRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeEcsTaskProperties) *string { return v.ExecutionRoleArn }).(pulumi.StringPtrOutput) } -// The name of the volume to mount. -func (o JobDefinitionMountPointsOutput) SourceVolume() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionMountPoints) *string { return v.SourceVolume }).(pulumi.StringPtrOutput) +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) IpcMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeEcsTaskProperties) *string { return v.IpcMode }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) PidMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeEcsTaskProperties) *string { return v.PidMode }).(pulumi.StringPtrOutput) } -type JobDefinitionMountPointsArrayOutput struct{ *pulumi.OutputState } +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) TaskRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeEcsTaskProperties) *string { return v.TaskRoleArn }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionMultiNodeEcsTaskPropertiesOutput) Volumes() JobDefinitionVolumeArrayOutput { + return o.ApplyT(func(v JobDefinitionMultiNodeEcsTaskProperties) []JobDefinitionVolume { return v.Volumes }).(JobDefinitionVolumeArrayOutput) +} + +type JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput struct{ *pulumi.OutputState } -func (JobDefinitionMountPointsArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionMountPoints)(nil)).Elem() +func (JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionMultiNodeEcsTaskProperties)(nil)).Elem() } -func (o JobDefinitionMountPointsArrayOutput) ToJobDefinitionMountPointsArrayOutput() JobDefinitionMountPointsArrayOutput { +func (o JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput) ToJobDefinitionMultiNodeEcsTaskPropertiesArrayOutput() JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput { return o } -func (o JobDefinitionMountPointsArrayOutput) ToJobDefinitionMountPointsArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointsArrayOutput { +func (o JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput) ToJobDefinitionMultiNodeEcsTaskPropertiesArrayOutputWithContext(ctx context.Context) JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput { return o } -func (o JobDefinitionMountPointsArrayOutput) Index(i pulumi.IntInput) JobDefinitionMountPointsOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionMountPoints { - return vs[0].([]JobDefinitionMountPoints)[vs[1].(int)] - }).(JobDefinitionMountPointsOutput) +func (o JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput) Index(i pulumi.IntInput) JobDefinitionMultiNodeEcsTaskPropertiesOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionMultiNodeEcsTaskProperties { + return vs[0].([]JobDefinitionMultiNodeEcsTaskProperties)[vs[1].(int)] + }).(JobDefinitionMultiNodeEcsTaskPropertiesOutput) } type JobDefinitionNetworkConfiguration struct { @@ -6504,9 +7803,9 @@ func (o JobDefinitionNodePropertiesPtrOutput) NumNodes() pulumi.IntPtrOutput { type JobDefinitionNodeRangeProperty struct { // The container details for the node range. - Container *JobDefinitionContainerProperties `pulumi:"container"` + Container *JobDefinitionMultiNodeContainerProperties `pulumi:"container"` // This is an object that represents the properties of the node range for a multi-node parallel job. - EcsProperties *JobDefinitionEcsProperties `pulumi:"ecsProperties"` + EcsProperties *JobDefinitionMultiNodeEcsProperties `pulumi:"ecsProperties"` // This is an object that represents the properties of the node range for a multi-node parallel job. EksProperties *JobDefinitionEksProperties `pulumi:"eksProperties"` // The instance types of the underlying host infrastructure of a multi-node parallel job. @@ -6532,9 +7831,9 @@ type JobDefinitionNodeRangePropertyInput interface { type JobDefinitionNodeRangePropertyArgs struct { // The container details for the node range. - Container JobDefinitionContainerPropertiesPtrInput `pulumi:"container"` + Container JobDefinitionMultiNodeContainerPropertiesPtrInput `pulumi:"container"` // This is an object that represents the properties of the node range for a multi-node parallel job. - EcsProperties JobDefinitionEcsPropertiesPtrInput `pulumi:"ecsProperties"` + EcsProperties JobDefinitionMultiNodeEcsPropertiesPtrInput `pulumi:"ecsProperties"` // This is an object that represents the properties of the node range for a multi-node parallel job. EksProperties JobDefinitionEksPropertiesPtrInput `pulumi:"eksProperties"` // The instance types of the underlying host infrastructure of a multi-node parallel job. @@ -6597,363 +7896,54 @@ func (o JobDefinitionNodeRangePropertyOutput) ToJobDefinitionNodeRangePropertyOu func (o JobDefinitionNodeRangePropertyOutput) ToJobDefinitionNodeRangePropertyOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyOutput { return o } - -// The container details for the node range. -func (o JobDefinitionNodeRangePropertyOutput) Container() JobDefinitionContainerPropertiesPtrOutput { - return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionContainerProperties { return v.Container }).(JobDefinitionContainerPropertiesPtrOutput) -} - -// This is an object that represents the properties of the node range for a multi-node parallel job. -func (o JobDefinitionNodeRangePropertyOutput) EcsProperties() JobDefinitionEcsPropertiesPtrOutput { - return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionEcsProperties { return v.EcsProperties }).(JobDefinitionEcsPropertiesPtrOutput) -} - -// This is an object that represents the properties of the node range for a multi-node parallel job. -func (o JobDefinitionNodeRangePropertyOutput) EksProperties() JobDefinitionEksPropertiesPtrOutput { - return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionEksProperties { return v.EksProperties }).(JobDefinitionEksPropertiesPtrOutput) -} - -// The instance types of the underlying host infrastructure of a multi-node parallel job. -// -// > This parameter isn't applicable to jobs that are running on Fargate resources. -// > -// > In addition, this list object is currently limited to one element. -func (o JobDefinitionNodeRangePropertyOutput) InstanceTypes() pulumi.StringArrayOutput { - return o.ApplyT(func(v JobDefinitionNodeRangeProperty) []string { return v.InstanceTypes }).(pulumi.StringArrayOutput) -} - -// The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. -func (o JobDefinitionNodeRangePropertyOutput) TargetNodes() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionNodeRangeProperty) string { return v.TargetNodes }).(pulumi.StringOutput) -} - -type JobDefinitionNodeRangePropertyArrayOutput struct{ *pulumi.OutputState } - -func (JobDefinitionNodeRangePropertyArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionNodeRangeProperty)(nil)).Elem() -} - -func (o JobDefinitionNodeRangePropertyArrayOutput) ToJobDefinitionNodeRangePropertyArrayOutput() JobDefinitionNodeRangePropertyArrayOutput { - return o -} - -func (o JobDefinitionNodeRangePropertyArrayOutput) ToJobDefinitionNodeRangePropertyArrayOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyArrayOutput { - return o -} - -func (o JobDefinitionNodeRangePropertyArrayOutput) Index(i pulumi.IntInput) JobDefinitionNodeRangePropertyOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionNodeRangeProperty { - return vs[0].([]JobDefinitionNodeRangeProperty)[vs[1].(int)] - }).(JobDefinitionNodeRangePropertyOutput) -} - -type JobDefinitionPodProperties struct { - // The properties of the container that's used on the Amazon EKS pod. - // - // > This object is limited to 10 elements. - Containers []JobDefinitionEksContainer `pulumi:"containers"` - // The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - // - // Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - DnsPolicy *string `pulumi:"dnsPolicy"` - // Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - HostNetwork *bool `pulumi:"hostNetwork"` - ImagePullSecrets []JobDefinitionImagePullSecret `pulumi:"imagePullSecrets"` - // These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - // - // > This object is limited to 10 elements. - InitContainers []JobDefinitionEksContainer `pulumi:"initContainers"` - // Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - Metadata *JobDefinitionMetadata `pulumi:"metadata"` - // The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - ServiceAccountName *string `pulumi:"serviceAccountName"` - // Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - ShareProcessNamespace *bool `pulumi:"shareProcessNamespace"` - // Specifies the volumes for a job definition that uses Amazon EKS resources. - Volumes []JobDefinitionEksVolume `pulumi:"volumes"` -} - -// JobDefinitionPodPropertiesInput is an input type that accepts JobDefinitionPodPropertiesArgs and JobDefinitionPodPropertiesOutput values. -// You can construct a concrete instance of `JobDefinitionPodPropertiesInput` via: -// -// JobDefinitionPodPropertiesArgs{...} -type JobDefinitionPodPropertiesInput interface { - pulumi.Input - - ToJobDefinitionPodPropertiesOutput() JobDefinitionPodPropertiesOutput - ToJobDefinitionPodPropertiesOutputWithContext(context.Context) JobDefinitionPodPropertiesOutput -} - -type JobDefinitionPodPropertiesArgs struct { - // The properties of the container that's used on the Amazon EKS pod. - // - // > This object is limited to 10 elements. - Containers JobDefinitionEksContainerArrayInput `pulumi:"containers"` - // The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - // - // Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - DnsPolicy pulumi.StringPtrInput `pulumi:"dnsPolicy"` - // Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - HostNetwork pulumi.BoolPtrInput `pulumi:"hostNetwork"` - ImagePullSecrets JobDefinitionImagePullSecretArrayInput `pulumi:"imagePullSecrets"` - // These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - // - // > This object is limited to 10 elements. - InitContainers JobDefinitionEksContainerArrayInput `pulumi:"initContainers"` - // Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - Metadata JobDefinitionMetadataPtrInput `pulumi:"metadata"` - // The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - ServiceAccountName pulumi.StringPtrInput `pulumi:"serviceAccountName"` - // Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - ShareProcessNamespace pulumi.BoolPtrInput `pulumi:"shareProcessNamespace"` - // Specifies the volumes for a job definition that uses Amazon EKS resources. - Volumes JobDefinitionEksVolumeArrayInput `pulumi:"volumes"` -} - -func (JobDefinitionPodPropertiesArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionPodProperties)(nil)).Elem() -} - -func (i JobDefinitionPodPropertiesArgs) ToJobDefinitionPodPropertiesOutput() JobDefinitionPodPropertiesOutput { - return i.ToJobDefinitionPodPropertiesOutputWithContext(context.Background()) -} - -func (i JobDefinitionPodPropertiesArgs) ToJobDefinitionPodPropertiesOutputWithContext(ctx context.Context) JobDefinitionPodPropertiesOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionPodPropertiesOutput) -} - -func (i JobDefinitionPodPropertiesArgs) ToJobDefinitionPodPropertiesPtrOutput() JobDefinitionPodPropertiesPtrOutput { - return i.ToJobDefinitionPodPropertiesPtrOutputWithContext(context.Background()) -} - -func (i JobDefinitionPodPropertiesArgs) ToJobDefinitionPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionPodPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionPodPropertiesOutput).ToJobDefinitionPodPropertiesPtrOutputWithContext(ctx) -} - -// JobDefinitionPodPropertiesPtrInput is an input type that accepts JobDefinitionPodPropertiesArgs, JobDefinitionPodPropertiesPtr and JobDefinitionPodPropertiesPtrOutput values. -// You can construct a concrete instance of `JobDefinitionPodPropertiesPtrInput` via: -// -// JobDefinitionPodPropertiesArgs{...} -// -// or: -// -// nil -type JobDefinitionPodPropertiesPtrInput interface { - pulumi.Input - - ToJobDefinitionPodPropertiesPtrOutput() JobDefinitionPodPropertiesPtrOutput - ToJobDefinitionPodPropertiesPtrOutputWithContext(context.Context) JobDefinitionPodPropertiesPtrOutput -} - -type jobDefinitionPodPropertiesPtrType JobDefinitionPodPropertiesArgs - -func JobDefinitionPodPropertiesPtr(v *JobDefinitionPodPropertiesArgs) JobDefinitionPodPropertiesPtrInput { - return (*jobDefinitionPodPropertiesPtrType)(v) -} - -func (*jobDefinitionPodPropertiesPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionPodProperties)(nil)).Elem() -} - -func (i *jobDefinitionPodPropertiesPtrType) ToJobDefinitionPodPropertiesPtrOutput() JobDefinitionPodPropertiesPtrOutput { - return i.ToJobDefinitionPodPropertiesPtrOutputWithContext(context.Background()) -} - -func (i *jobDefinitionPodPropertiesPtrType) ToJobDefinitionPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionPodPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionPodPropertiesPtrOutput) -} - -type JobDefinitionPodPropertiesOutput struct{ *pulumi.OutputState } - -func (JobDefinitionPodPropertiesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionPodProperties)(nil)).Elem() -} - -func (o JobDefinitionPodPropertiesOutput) ToJobDefinitionPodPropertiesOutput() JobDefinitionPodPropertiesOutput { - return o -} - -func (o JobDefinitionPodPropertiesOutput) ToJobDefinitionPodPropertiesOutputWithContext(ctx context.Context) JobDefinitionPodPropertiesOutput { - return o -} - -func (o JobDefinitionPodPropertiesOutput) ToJobDefinitionPodPropertiesPtrOutput() JobDefinitionPodPropertiesPtrOutput { - return o.ToJobDefinitionPodPropertiesPtrOutputWithContext(context.Background()) -} - -func (o JobDefinitionPodPropertiesOutput) ToJobDefinitionPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionPodPropertiesPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionPodProperties) *JobDefinitionPodProperties { - return &v - }).(JobDefinitionPodPropertiesPtrOutput) -} - -// The properties of the container that's used on the Amazon EKS pod. -// -// > This object is limited to 10 elements. -func (o JobDefinitionPodPropertiesOutput) Containers() JobDefinitionEksContainerArrayOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) []JobDefinitionEksContainer { return v.Containers }).(JobDefinitionEksContainerArrayOutput) -} - -// The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . -// -// Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` -func (o JobDefinitionPodPropertiesOutput) DnsPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *string { return v.DnsPolicy }).(pulumi.StringPtrOutput) -} - -// Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . -func (o JobDefinitionPodPropertiesOutput) HostNetwork() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *bool { return v.HostNetwork }).(pulumi.BoolPtrOutput) -} - -func (o JobDefinitionPodPropertiesOutput) ImagePullSecrets() JobDefinitionImagePullSecretArrayOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) []JobDefinitionImagePullSecret { return v.ImagePullSecrets }).(JobDefinitionImagePullSecretArrayOutput) -} - -// These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . -// -// > This object is limited to 10 elements. -func (o JobDefinitionPodPropertiesOutput) InitContainers() JobDefinitionEksContainerArrayOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) []JobDefinitionEksContainer { return v.InitContainers }).(JobDefinitionEksContainerArrayOutput) -} - -// Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . -func (o JobDefinitionPodPropertiesOutput) Metadata() JobDefinitionMetadataPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *JobDefinitionMetadata { return v.Metadata }).(JobDefinitionMetadataPtrOutput) -} - -// The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . -func (o JobDefinitionPodPropertiesOutput) ServiceAccountName() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *string { return v.ServiceAccountName }).(pulumi.StringPtrOutput) -} - -// Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . -func (o JobDefinitionPodPropertiesOutput) ShareProcessNamespace() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *bool { return v.ShareProcessNamespace }).(pulumi.BoolPtrOutput) -} - -// Specifies the volumes for a job definition that uses Amazon EKS resources. -func (o JobDefinitionPodPropertiesOutput) Volumes() JobDefinitionEksVolumeArrayOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) []JobDefinitionEksVolume { return v.Volumes }).(JobDefinitionEksVolumeArrayOutput) -} - -type JobDefinitionPodPropertiesPtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionPodPropertiesPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionPodProperties)(nil)).Elem() -} - -func (o JobDefinitionPodPropertiesPtrOutput) ToJobDefinitionPodPropertiesPtrOutput() JobDefinitionPodPropertiesPtrOutput { - return o -} - -func (o JobDefinitionPodPropertiesPtrOutput) ToJobDefinitionPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionPodPropertiesPtrOutput { - return o -} - -func (o JobDefinitionPodPropertiesPtrOutput) Elem() JobDefinitionPodPropertiesOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) JobDefinitionPodProperties { - if v != nil { - return *v - } - var ret JobDefinitionPodProperties - return ret - }).(JobDefinitionPodPropertiesOutput) -} - -// The properties of the container that's used on the Amazon EKS pod. -// -// > This object is limited to 10 elements. -func (o JobDefinitionPodPropertiesPtrOutput) Containers() JobDefinitionEksContainerArrayOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) []JobDefinitionEksContainer { - if v == nil { - return nil - } - return v.Containers - }).(JobDefinitionEksContainerArrayOutput) -} - -// The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . -// -// Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` -func (o JobDefinitionPodPropertiesPtrOutput) DnsPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *string { - if v == nil { - return nil - } - return v.DnsPolicy - }).(pulumi.StringPtrOutput) + +// The container details for the node range. +func (o JobDefinitionNodeRangePropertyOutput) Container() JobDefinitionMultiNodeContainerPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionMultiNodeContainerProperties { return v.Container }).(JobDefinitionMultiNodeContainerPropertiesPtrOutput) } -// Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . -func (o JobDefinitionPodPropertiesPtrOutput) HostNetwork() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *bool { - if v == nil { - return nil - } - return v.HostNetwork - }).(pulumi.BoolPtrOutput) +// This is an object that represents the properties of the node range for a multi-node parallel job. +func (o JobDefinitionNodeRangePropertyOutput) EcsProperties() JobDefinitionMultiNodeEcsPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionMultiNodeEcsProperties { return v.EcsProperties }).(JobDefinitionMultiNodeEcsPropertiesPtrOutput) } -func (o JobDefinitionPodPropertiesPtrOutput) ImagePullSecrets() JobDefinitionImagePullSecretArrayOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) []JobDefinitionImagePullSecret { - if v == nil { - return nil - } - return v.ImagePullSecrets - }).(JobDefinitionImagePullSecretArrayOutput) +// This is an object that represents the properties of the node range for a multi-node parallel job. +func (o JobDefinitionNodeRangePropertyOutput) EksProperties() JobDefinitionEksPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionEksProperties { return v.EksProperties }).(JobDefinitionEksPropertiesPtrOutput) } -// These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . +// The instance types of the underlying host infrastructure of a multi-node parallel job. // -// > This object is limited to 10 elements. -func (o JobDefinitionPodPropertiesPtrOutput) InitContainers() JobDefinitionEksContainerArrayOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) []JobDefinitionEksContainer { - if v == nil { - return nil - } - return v.InitContainers - }).(JobDefinitionEksContainerArrayOutput) +// > This parameter isn't applicable to jobs that are running on Fargate resources. +// > +// > In addition, this list object is currently limited to one element. +func (o JobDefinitionNodeRangePropertyOutput) InstanceTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v JobDefinitionNodeRangeProperty) []string { return v.InstanceTypes }).(pulumi.StringArrayOutput) } -// Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . -func (o JobDefinitionPodPropertiesPtrOutput) Metadata() JobDefinitionMetadataPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *JobDefinitionMetadata { - if v == nil { - return nil - } - return v.Metadata - }).(JobDefinitionMetadataPtrOutput) +// The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. +func (o JobDefinitionNodeRangePropertyOutput) TargetNodes() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionNodeRangeProperty) string { return v.TargetNodes }).(pulumi.StringOutput) } -// The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . -func (o JobDefinitionPodPropertiesPtrOutput) ServiceAccountName() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *string { - if v == nil { - return nil - } - return v.ServiceAccountName - }).(pulumi.StringPtrOutput) +type JobDefinitionNodeRangePropertyArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionNodeRangePropertyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionNodeRangeProperty)(nil)).Elem() } -// Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . -func (o JobDefinitionPodPropertiesPtrOutput) ShareProcessNamespace() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *bool { - if v == nil { - return nil - } - return v.ShareProcessNamespace - }).(pulumi.BoolPtrOutput) +func (o JobDefinitionNodeRangePropertyArrayOutput) ToJobDefinitionNodeRangePropertyArrayOutput() JobDefinitionNodeRangePropertyArrayOutput { + return o } -// Specifies the volumes for a job definition that uses Amazon EKS resources. -func (o JobDefinitionPodPropertiesPtrOutput) Volumes() JobDefinitionEksVolumeArrayOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) []JobDefinitionEksVolume { - if v == nil { - return nil - } - return v.Volumes - }).(JobDefinitionEksVolumeArrayOutput) +func (o JobDefinitionNodeRangePropertyArrayOutput) ToJobDefinitionNodeRangePropertyArrayOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyArrayOutput { + return o +} + +func (o JobDefinitionNodeRangePropertyArrayOutput) Index(i pulumi.IntInput) JobDefinitionNodeRangePropertyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionNodeRangeProperty { + return vs[0].([]JobDefinitionNodeRangeProperty)[vs[1].(int)] + }).(JobDefinitionNodeRangePropertyOutput) } type JobDefinitionRepositoryCredentials struct { @@ -7902,7 +8892,7 @@ type JobDefinitionTaskContainerProperties struct { // This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the [--volume](https://docs.aws.amazon.com/) option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . // // Windows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives. - MountPoints []JobDefinitionMountPoints `pulumi:"mountPoints"` + MountPoints []JobDefinitionMountPoint `pulumi:"mountPoints"` // The name of a container. The name can be used as a unique identifier to target your `dependsOn` and `Overrides` objects. Name *string `pulumi:"name"` // When this parameter is `true` , the container is given elevated privileges on the host container instance (similar to the `root` user). This parameter maps to `Privileged` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--privileged` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . @@ -7989,7 +8979,7 @@ type JobDefinitionTaskContainerPropertiesArgs struct { // This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the [--volume](https://docs.aws.amazon.com/) option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . // // Windows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives. - MountPoints JobDefinitionMountPointsArrayInput `pulumi:"mountPoints"` + MountPoints JobDefinitionMountPointArrayInput `pulumi:"mountPoints"` // The name of a container. The name can be used as a unique identifier to target your `dependsOn` and `Overrides` objects. Name pulumi.StringPtrInput `pulumi:"name"` // When this parameter is `true` , the container is given elevated privileges on the host container instance (similar to the `root` user). This parameter maps to `Privileged` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the `--privileged` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . @@ -8138,8 +9128,8 @@ func (o JobDefinitionTaskContainerPropertiesOutput) LogConfiguration() JobDefini // This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the [--volume](https://docs.aws.amazon.com/) option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . // // Windows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives. -func (o JobDefinitionTaskContainerPropertiesOutput) MountPoints() JobDefinitionMountPointsArrayOutput { - return o.ApplyT(func(v JobDefinitionTaskContainerProperties) []JobDefinitionMountPoints { return v.MountPoints }).(JobDefinitionMountPointsArrayOutput) +func (o JobDefinitionTaskContainerPropertiesOutput) MountPoints() JobDefinitionMountPointArrayOutput { + return o.ApplyT(func(v JobDefinitionTaskContainerProperties) []JobDefinitionMountPoint { return v.MountPoints }).(JobDefinitionMountPointArrayOutput) } // The name of a container. The name can be used as a unique identifier to target your `dependsOn` and `Overrides` objects. @@ -8229,159 +9219,6 @@ func (o JobDefinitionTaskContainerPropertiesArrayOutput) Index(i pulumi.IntInput }).(JobDefinitionTaskContainerPropertiesOutput) } -type JobDefinitionTimeout struct { - // The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - // - // For array jobs, the timeout applies to the child jobs, not to the parent array job. - // - // For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - AttemptDurationSeconds *int `pulumi:"attemptDurationSeconds"` -} - -// JobDefinitionTimeoutInput is an input type that accepts JobDefinitionTimeoutArgs and JobDefinitionTimeoutOutput values. -// You can construct a concrete instance of `JobDefinitionTimeoutInput` via: -// -// JobDefinitionTimeoutArgs{...} -type JobDefinitionTimeoutInput interface { - pulumi.Input - - ToJobDefinitionTimeoutOutput() JobDefinitionTimeoutOutput - ToJobDefinitionTimeoutOutputWithContext(context.Context) JobDefinitionTimeoutOutput -} - -type JobDefinitionTimeoutArgs struct { - // The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - // - // For array jobs, the timeout applies to the child jobs, not to the parent array job. - // - // For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - AttemptDurationSeconds pulumi.IntPtrInput `pulumi:"attemptDurationSeconds"` -} - -func (JobDefinitionTimeoutArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionTimeout)(nil)).Elem() -} - -func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutOutput() JobDefinitionTimeoutOutput { - return i.ToJobDefinitionTimeoutOutputWithContext(context.Background()) -} - -func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutOutputWithContext(ctx context.Context) JobDefinitionTimeoutOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionTimeoutOutput) -} - -func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput { - return i.ToJobDefinitionTimeoutPtrOutputWithContext(context.Background()) -} - -func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionTimeoutPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionTimeoutOutput).ToJobDefinitionTimeoutPtrOutputWithContext(ctx) -} - -// JobDefinitionTimeoutPtrInput is an input type that accepts JobDefinitionTimeoutArgs, JobDefinitionTimeoutPtr and JobDefinitionTimeoutPtrOutput values. -// You can construct a concrete instance of `JobDefinitionTimeoutPtrInput` via: -// -// JobDefinitionTimeoutArgs{...} -// -// or: -// -// nil -type JobDefinitionTimeoutPtrInput interface { - pulumi.Input - - ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput - ToJobDefinitionTimeoutPtrOutputWithContext(context.Context) JobDefinitionTimeoutPtrOutput -} - -type jobDefinitionTimeoutPtrType JobDefinitionTimeoutArgs - -func JobDefinitionTimeoutPtr(v *JobDefinitionTimeoutArgs) JobDefinitionTimeoutPtrInput { - return (*jobDefinitionTimeoutPtrType)(v) -} - -func (*jobDefinitionTimeoutPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionTimeout)(nil)).Elem() -} - -func (i *jobDefinitionTimeoutPtrType) ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput { - return i.ToJobDefinitionTimeoutPtrOutputWithContext(context.Background()) -} - -func (i *jobDefinitionTimeoutPtrType) ToJobDefinitionTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionTimeoutPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionTimeoutPtrOutput) -} - -type JobDefinitionTimeoutOutput struct{ *pulumi.OutputState } - -func (JobDefinitionTimeoutOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionTimeout)(nil)).Elem() -} - -func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutOutput() JobDefinitionTimeoutOutput { - return o -} - -func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutOutputWithContext(ctx context.Context) JobDefinitionTimeoutOutput { - return o -} - -func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput { - return o.ToJobDefinitionTimeoutPtrOutputWithContext(context.Background()) -} - -func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionTimeoutPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionTimeout) *JobDefinitionTimeout { - return &v - }).(JobDefinitionTimeoutPtrOutput) -} - -// The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. -// -// For array jobs, the timeout applies to the child jobs, not to the parent array job. -// -// For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. -func (o JobDefinitionTimeoutOutput) AttemptDurationSeconds() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionTimeout) *int { return v.AttemptDurationSeconds }).(pulumi.IntPtrOutput) -} - -type JobDefinitionTimeoutPtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionTimeoutPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionTimeout)(nil)).Elem() -} - -func (o JobDefinitionTimeoutPtrOutput) ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput { - return o -} - -func (o JobDefinitionTimeoutPtrOutput) ToJobDefinitionTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionTimeoutPtrOutput { - return o -} - -func (o JobDefinitionTimeoutPtrOutput) Elem() JobDefinitionTimeoutOutput { - return o.ApplyT(func(v *JobDefinitionTimeout) JobDefinitionTimeout { - if v != nil { - return *v - } - var ret JobDefinitionTimeout - return ret - }).(JobDefinitionTimeoutOutput) -} - -// The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. -// -// For array jobs, the timeout applies to the child jobs, not to the parent array job. -// -// For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. -func (o JobDefinitionTimeoutPtrOutput) AttemptDurationSeconds() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionTimeout) *int { - if v == nil { - return nil - } - return v.AttemptDurationSeconds - }).(pulumi.IntPtrOutput) -} - type JobDefinitionTmpfs struct { // The absolute file path in the container where the `tmpfs` volume is mounted. ContainerPath string `pulumi:"containerPath"` @@ -8618,270 +9455,125 @@ func (o JobDefinitionUlimitArrayOutput) Index(i pulumi.IntInput) JobDefinitionUl }).(JobDefinitionUlimitOutput) } -type JobDefinitionVolumes struct { - // This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . +type JobDefinitionVolume struct { + // This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . EfsVolumeConfiguration *JobDefinitionEfsVolumeConfiguration `pulumi:"efsVolumeConfiguration"` // The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. // // > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. - Host *JobDefinitionVolumesHost `pulumi:"host"` + Host *JobDefinitionHost `pulumi:"host"` // The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . Name *string `pulumi:"name"` } -// JobDefinitionVolumesInput is an input type that accepts JobDefinitionVolumesArgs and JobDefinitionVolumesOutput values. -// You can construct a concrete instance of `JobDefinitionVolumesInput` via: +// JobDefinitionVolumeInput is an input type that accepts JobDefinitionVolumeArgs and JobDefinitionVolumeOutput values. +// You can construct a concrete instance of `JobDefinitionVolumeInput` via: // -// JobDefinitionVolumesArgs{...} -type JobDefinitionVolumesInput interface { +// JobDefinitionVolumeArgs{...} +type JobDefinitionVolumeInput interface { pulumi.Input - ToJobDefinitionVolumesOutput() JobDefinitionVolumesOutput - ToJobDefinitionVolumesOutputWithContext(context.Context) JobDefinitionVolumesOutput + ToJobDefinitionVolumeOutput() JobDefinitionVolumeOutput + ToJobDefinitionVolumeOutputWithContext(context.Context) JobDefinitionVolumeOutput } -type JobDefinitionVolumesArgs struct { - // This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . +type JobDefinitionVolumeArgs struct { + // This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . EfsVolumeConfiguration JobDefinitionEfsVolumeConfigurationPtrInput `pulumi:"efsVolumeConfiguration"` // The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. // // > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. - Host JobDefinitionVolumesHostPtrInput `pulumi:"host"` + Host JobDefinitionHostPtrInput `pulumi:"host"` // The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . Name pulumi.StringPtrInput `pulumi:"name"` } -func (JobDefinitionVolumesArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionVolumes)(nil)).Elem() +func (JobDefinitionVolumeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionVolume)(nil)).Elem() } -func (i JobDefinitionVolumesArgs) ToJobDefinitionVolumesOutput() JobDefinitionVolumesOutput { - return i.ToJobDefinitionVolumesOutputWithContext(context.Background()) +func (i JobDefinitionVolumeArgs) ToJobDefinitionVolumeOutput() JobDefinitionVolumeOutput { + return i.ToJobDefinitionVolumeOutputWithContext(context.Background()) } -func (i JobDefinitionVolumesArgs) ToJobDefinitionVolumesOutputWithContext(ctx context.Context) JobDefinitionVolumesOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumesOutput) +func (i JobDefinitionVolumeArgs) ToJobDefinitionVolumeOutputWithContext(ctx context.Context) JobDefinitionVolumeOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumeOutput) } -// JobDefinitionVolumesArrayInput is an input type that accepts JobDefinitionVolumesArray and JobDefinitionVolumesArrayOutput values. -// You can construct a concrete instance of `JobDefinitionVolumesArrayInput` via: +// JobDefinitionVolumeArrayInput is an input type that accepts JobDefinitionVolumeArray and JobDefinitionVolumeArrayOutput values. +// You can construct a concrete instance of `JobDefinitionVolumeArrayInput` via: // -// JobDefinitionVolumesArray{ JobDefinitionVolumesArgs{...} } -type JobDefinitionVolumesArrayInput interface { +// JobDefinitionVolumeArray{ JobDefinitionVolumeArgs{...} } +type JobDefinitionVolumeArrayInput interface { pulumi.Input - ToJobDefinitionVolumesArrayOutput() JobDefinitionVolumesArrayOutput - ToJobDefinitionVolumesArrayOutputWithContext(context.Context) JobDefinitionVolumesArrayOutput + ToJobDefinitionVolumeArrayOutput() JobDefinitionVolumeArrayOutput + ToJobDefinitionVolumeArrayOutputWithContext(context.Context) JobDefinitionVolumeArrayOutput } -type JobDefinitionVolumesArray []JobDefinitionVolumesInput +type JobDefinitionVolumeArray []JobDefinitionVolumeInput -func (JobDefinitionVolumesArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionVolumes)(nil)).Elem() +func (JobDefinitionVolumeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionVolume)(nil)).Elem() } -func (i JobDefinitionVolumesArray) ToJobDefinitionVolumesArrayOutput() JobDefinitionVolumesArrayOutput { - return i.ToJobDefinitionVolumesArrayOutputWithContext(context.Background()) +func (i JobDefinitionVolumeArray) ToJobDefinitionVolumeArrayOutput() JobDefinitionVolumeArrayOutput { + return i.ToJobDefinitionVolumeArrayOutputWithContext(context.Background()) } -func (i JobDefinitionVolumesArray) ToJobDefinitionVolumesArrayOutputWithContext(ctx context.Context) JobDefinitionVolumesArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumesArrayOutput) +func (i JobDefinitionVolumeArray) ToJobDefinitionVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionVolumeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumeArrayOutput) } -type JobDefinitionVolumesOutput struct{ *pulumi.OutputState } +type JobDefinitionVolumeOutput struct{ *pulumi.OutputState } -func (JobDefinitionVolumesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionVolumes)(nil)).Elem() +func (JobDefinitionVolumeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionVolume)(nil)).Elem() } -func (o JobDefinitionVolumesOutput) ToJobDefinitionVolumesOutput() JobDefinitionVolumesOutput { +func (o JobDefinitionVolumeOutput) ToJobDefinitionVolumeOutput() JobDefinitionVolumeOutput { return o } -func (o JobDefinitionVolumesOutput) ToJobDefinitionVolumesOutputWithContext(ctx context.Context) JobDefinitionVolumesOutput { +func (o JobDefinitionVolumeOutput) ToJobDefinitionVolumeOutputWithContext(ctx context.Context) JobDefinitionVolumeOutput { return o } -// This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . -func (o JobDefinitionVolumesOutput) EfsVolumeConfiguration() JobDefinitionEfsVolumeConfigurationPtrOutput { - return o.ApplyT(func(v JobDefinitionVolumes) *JobDefinitionEfsVolumeConfiguration { return v.EfsVolumeConfiguration }).(JobDefinitionEfsVolumeConfigurationPtrOutput) +// This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . +func (o JobDefinitionVolumeOutput) EfsVolumeConfiguration() JobDefinitionEfsVolumeConfigurationPtrOutput { + return o.ApplyT(func(v JobDefinitionVolume) *JobDefinitionEfsVolumeConfiguration { return v.EfsVolumeConfiguration }).(JobDefinitionEfsVolumeConfigurationPtrOutput) } // The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. // // > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. -func (o JobDefinitionVolumesOutput) Host() JobDefinitionVolumesHostPtrOutput { - return o.ApplyT(func(v JobDefinitionVolumes) *JobDefinitionVolumesHost { return v.Host }).(JobDefinitionVolumesHostPtrOutput) +func (o JobDefinitionVolumeOutput) Host() JobDefinitionHostPtrOutput { + return o.ApplyT(func(v JobDefinitionVolume) *JobDefinitionHost { return v.Host }).(JobDefinitionHostPtrOutput) } // The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . -func (o JobDefinitionVolumesOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionVolumes) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -type JobDefinitionVolumesArrayOutput struct{ *pulumi.OutputState } - -func (JobDefinitionVolumesArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionVolumes)(nil)).Elem() -} - -func (o JobDefinitionVolumesArrayOutput) ToJobDefinitionVolumesArrayOutput() JobDefinitionVolumesArrayOutput { - return o -} - -func (o JobDefinitionVolumesArrayOutput) ToJobDefinitionVolumesArrayOutputWithContext(ctx context.Context) JobDefinitionVolumesArrayOutput { - return o -} - -func (o JobDefinitionVolumesArrayOutput) Index(i pulumi.IntInput) JobDefinitionVolumesOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionVolumes { - return vs[0].([]JobDefinitionVolumes)[vs[1].(int)] - }).(JobDefinitionVolumesOutput) -} - -type JobDefinitionVolumesHost struct { - // The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - // - // > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - SourcePath *string `pulumi:"sourcePath"` -} - -// JobDefinitionVolumesHostInput is an input type that accepts JobDefinitionVolumesHostArgs and JobDefinitionVolumesHostOutput values. -// You can construct a concrete instance of `JobDefinitionVolumesHostInput` via: -// -// JobDefinitionVolumesHostArgs{...} -type JobDefinitionVolumesHostInput interface { - pulumi.Input - - ToJobDefinitionVolumesHostOutput() JobDefinitionVolumesHostOutput - ToJobDefinitionVolumesHostOutputWithContext(context.Context) JobDefinitionVolumesHostOutput -} - -type JobDefinitionVolumesHostArgs struct { - // The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - // - // > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - SourcePath pulumi.StringPtrInput `pulumi:"sourcePath"` -} - -func (JobDefinitionVolumesHostArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionVolumesHost)(nil)).Elem() -} - -func (i JobDefinitionVolumesHostArgs) ToJobDefinitionVolumesHostOutput() JobDefinitionVolumesHostOutput { - return i.ToJobDefinitionVolumesHostOutputWithContext(context.Background()) -} - -func (i JobDefinitionVolumesHostArgs) ToJobDefinitionVolumesHostOutputWithContext(ctx context.Context) JobDefinitionVolumesHostOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumesHostOutput) -} - -func (i JobDefinitionVolumesHostArgs) ToJobDefinitionVolumesHostPtrOutput() JobDefinitionVolumesHostPtrOutput { - return i.ToJobDefinitionVolumesHostPtrOutputWithContext(context.Background()) -} - -func (i JobDefinitionVolumesHostArgs) ToJobDefinitionVolumesHostPtrOutputWithContext(ctx context.Context) JobDefinitionVolumesHostPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumesHostOutput).ToJobDefinitionVolumesHostPtrOutputWithContext(ctx) -} - -// JobDefinitionVolumesHostPtrInput is an input type that accepts JobDefinitionVolumesHostArgs, JobDefinitionVolumesHostPtr and JobDefinitionVolumesHostPtrOutput values. -// You can construct a concrete instance of `JobDefinitionVolumesHostPtrInput` via: -// -// JobDefinitionVolumesHostArgs{...} -// -// or: -// -// nil -type JobDefinitionVolumesHostPtrInput interface { - pulumi.Input - - ToJobDefinitionVolumesHostPtrOutput() JobDefinitionVolumesHostPtrOutput - ToJobDefinitionVolumesHostPtrOutputWithContext(context.Context) JobDefinitionVolumesHostPtrOutput -} - -type jobDefinitionVolumesHostPtrType JobDefinitionVolumesHostArgs - -func JobDefinitionVolumesHostPtr(v *JobDefinitionVolumesHostArgs) JobDefinitionVolumesHostPtrInput { - return (*jobDefinitionVolumesHostPtrType)(v) -} - -func (*jobDefinitionVolumesHostPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionVolumesHost)(nil)).Elem() -} - -func (i *jobDefinitionVolumesHostPtrType) ToJobDefinitionVolumesHostPtrOutput() JobDefinitionVolumesHostPtrOutput { - return i.ToJobDefinitionVolumesHostPtrOutputWithContext(context.Background()) -} - -func (i *jobDefinitionVolumesHostPtrType) ToJobDefinitionVolumesHostPtrOutputWithContext(ctx context.Context) JobDefinitionVolumesHostPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumesHostPtrOutput) -} - -type JobDefinitionVolumesHostOutput struct{ *pulumi.OutputState } - -func (JobDefinitionVolumesHostOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionVolumesHost)(nil)).Elem() -} - -func (o JobDefinitionVolumesHostOutput) ToJobDefinitionVolumesHostOutput() JobDefinitionVolumesHostOutput { - return o -} - -func (o JobDefinitionVolumesHostOutput) ToJobDefinitionVolumesHostOutputWithContext(ctx context.Context) JobDefinitionVolumesHostOutput { - return o -} - -func (o JobDefinitionVolumesHostOutput) ToJobDefinitionVolumesHostPtrOutput() JobDefinitionVolumesHostPtrOutput { - return o.ToJobDefinitionVolumesHostPtrOutputWithContext(context.Background()) -} - -func (o JobDefinitionVolumesHostOutput) ToJobDefinitionVolumesHostPtrOutputWithContext(ctx context.Context) JobDefinitionVolumesHostPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionVolumesHost) *JobDefinitionVolumesHost { - return &v - }).(JobDefinitionVolumesHostPtrOutput) -} - -// The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. -// -// > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. -func (o JobDefinitionVolumesHostOutput) SourcePath() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionVolumesHost) *string { return v.SourcePath }).(pulumi.StringPtrOutput) +func (o JobDefinitionVolumeOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionVolume) *string { return v.Name }).(pulumi.StringPtrOutput) } -type JobDefinitionVolumesHostPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionVolumeArrayOutput struct{ *pulumi.OutputState } -func (JobDefinitionVolumesHostPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionVolumesHost)(nil)).Elem() +func (JobDefinitionVolumeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionVolume)(nil)).Elem() } -func (o JobDefinitionVolumesHostPtrOutput) ToJobDefinitionVolumesHostPtrOutput() JobDefinitionVolumesHostPtrOutput { +func (o JobDefinitionVolumeArrayOutput) ToJobDefinitionVolumeArrayOutput() JobDefinitionVolumeArrayOutput { return o } -func (o JobDefinitionVolumesHostPtrOutput) ToJobDefinitionVolumesHostPtrOutputWithContext(ctx context.Context) JobDefinitionVolumesHostPtrOutput { +func (o JobDefinitionVolumeArrayOutput) ToJobDefinitionVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionVolumeArrayOutput { return o } -func (o JobDefinitionVolumesHostPtrOutput) Elem() JobDefinitionVolumesHostOutput { - return o.ApplyT(func(v *JobDefinitionVolumesHost) JobDefinitionVolumesHost { - if v != nil { - return *v - } - var ret JobDefinitionVolumesHost - return ret - }).(JobDefinitionVolumesHostOutput) -} - -// The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. -// -// > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. -func (o JobDefinitionVolumesHostPtrOutput) SourcePath() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionVolumesHost) *string { - if v == nil { - return nil - } - return v.SourcePath - }).(pulumi.StringPtrOutput) +func (o JobDefinitionVolumeArrayOutput) Index(i pulumi.IntInput) JobDefinitionVolumeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionVolume { + return vs[0].([]JobDefinitionVolume)[vs[1].(int)] + }).(JobDefinitionVolumeOutput) } type JobQueueComputeEnvironmentOrder struct { @@ -9453,16 +10145,18 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ComputeEnvironmentLaunchTemplateSpecificationOverrideArrayInput)(nil)).Elem(), ComputeEnvironmentLaunchTemplateSpecificationOverrideArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ComputeEnvironmentUpdatePolicyInput)(nil)).Elem(), ComputeEnvironmentUpdatePolicyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ComputeEnvironmentUpdatePolicyPtrInput)(nil)).Elem(), ComputeEnvironmentUpdatePolicyArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionAuthorizationConfigInput)(nil)).Elem(), JobDefinitionAuthorizationConfigArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionAuthorizationConfigPtrInput)(nil)).Elem(), JobDefinitionAuthorizationConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionDeviceInput)(nil)).Elem(), JobDefinitionDeviceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionDeviceArrayInput)(nil)).Elem(), JobDefinitionDeviceArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEcsPropertiesInput)(nil)).Elem(), JobDefinitionEcsPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEcsPropertiesPtrInput)(nil)).Elem(), JobDefinitionEcsPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEcsTaskPropertiesInput)(nil)).Elem(), JobDefinitionEcsTaskPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEcsTaskPropertiesArrayInput)(nil)).Elem(), JobDefinitionEcsTaskPropertiesArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEfsAuthorizationConfigInput)(nil)).Elem(), JobDefinitionEfsAuthorizationConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEfsAuthorizationConfigPtrInput)(nil)).Elem(), JobDefinitionEfsAuthorizationConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEfsVolumeConfigurationInput)(nil)).Elem(), JobDefinitionEfsVolumeConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEfsVolumeConfigurationPtrInput)(nil)).Elem(), JobDefinitionEfsVolumeConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksContainerInput)(nil)).Elem(), JobDefinitionEksContainerArgs{}) @@ -9479,6 +10173,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksEmptyDirPtrInput)(nil)).Elem(), JobDefinitionEksEmptyDirArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksHostPathInput)(nil)).Elem(), JobDefinitionEksHostPathArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksHostPathPtrInput)(nil)).Elem(), JobDefinitionEksHostPathArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksMetadataInput)(nil)).Elem(), JobDefinitionEksMetadataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksMetadataPtrInput)(nil)).Elem(), JobDefinitionEksMetadataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksPodPropertiesInput)(nil)).Elem(), JobDefinitionEksPodPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksPodPropertiesPtrInput)(nil)).Elem(), JobDefinitionEksPodPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksPropertiesInput)(nil)).Elem(), JobDefinitionEksPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksPropertiesPtrInput)(nil)).Elem(), JobDefinitionEksPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksSecretInput)(nil)).Elem(), JobDefinitionEksSecretArgs{}) @@ -9491,26 +10189,30 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEphemeralStoragePtrInput)(nil)).Elem(), JobDefinitionEphemeralStorageArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEvaluateOnExitInput)(nil)).Elem(), JobDefinitionEvaluateOnExitArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEvaluateOnExitArrayInput)(nil)).Elem(), JobDefinitionEvaluateOnExitArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionFargatePlatformConfigurationInput)(nil)).Elem(), JobDefinitionFargatePlatformConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionFargatePlatformConfigurationPtrInput)(nil)).Elem(), JobDefinitionFargatePlatformConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionHostInput)(nil)).Elem(), JobDefinitionHostArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionHostPtrInput)(nil)).Elem(), JobDefinitionHostArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionImagePullSecretInput)(nil)).Elem(), JobDefinitionImagePullSecretArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionImagePullSecretArrayInput)(nil)).Elem(), JobDefinitionImagePullSecretArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionJobTimeoutInput)(nil)).Elem(), JobDefinitionJobTimeoutArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionJobTimeoutPtrInput)(nil)).Elem(), JobDefinitionJobTimeoutArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionLinuxParametersInput)(nil)).Elem(), JobDefinitionLinuxParametersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionLinuxParametersPtrInput)(nil)).Elem(), JobDefinitionLinuxParametersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionLogConfigurationInput)(nil)).Elem(), JobDefinitionLogConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionLogConfigurationPtrInput)(nil)).Elem(), JobDefinitionLogConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMetadataInput)(nil)).Elem(), JobDefinitionMetadataArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMetadataPtrInput)(nil)).Elem(), JobDefinitionMetadataArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMountPointsInput)(nil)).Elem(), JobDefinitionMountPointsArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMountPointsArrayInput)(nil)).Elem(), JobDefinitionMountPointsArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMountPointInput)(nil)).Elem(), JobDefinitionMountPointArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMountPointArrayInput)(nil)).Elem(), JobDefinitionMountPointArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMultiNodeContainerPropertiesInput)(nil)).Elem(), JobDefinitionMultiNodeContainerPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMultiNodeContainerPropertiesPtrInput)(nil)).Elem(), JobDefinitionMultiNodeContainerPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMultiNodeEcsPropertiesInput)(nil)).Elem(), JobDefinitionMultiNodeEcsPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMultiNodeEcsPropertiesPtrInput)(nil)).Elem(), JobDefinitionMultiNodeEcsPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMultiNodeEcsTaskPropertiesInput)(nil)).Elem(), JobDefinitionMultiNodeEcsTaskPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMultiNodeEcsTaskPropertiesArrayInput)(nil)).Elem(), JobDefinitionMultiNodeEcsTaskPropertiesArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionNetworkConfigurationInput)(nil)).Elem(), JobDefinitionNetworkConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionNetworkConfigurationPtrInput)(nil)).Elem(), JobDefinitionNetworkConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionNodePropertiesInput)(nil)).Elem(), JobDefinitionNodePropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionNodePropertiesPtrInput)(nil)).Elem(), JobDefinitionNodePropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionNodeRangePropertyInput)(nil)).Elem(), JobDefinitionNodeRangePropertyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionNodeRangePropertyArrayInput)(nil)).Elem(), JobDefinitionNodeRangePropertyArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionPodPropertiesInput)(nil)).Elem(), JobDefinitionPodPropertiesArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionPodPropertiesPtrInput)(nil)).Elem(), JobDefinitionPodPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionRepositoryCredentialsInput)(nil)).Elem(), JobDefinitionRepositoryCredentialsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionRepositoryCredentialsPtrInput)(nil)).Elem(), JobDefinitionRepositoryCredentialsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionResourceRequirementInput)(nil)).Elem(), JobDefinitionResourceRequirementArgs{}) @@ -9525,16 +10227,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTaskContainerDependencyArrayInput)(nil)).Elem(), JobDefinitionTaskContainerDependencyArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTaskContainerPropertiesInput)(nil)).Elem(), JobDefinitionTaskContainerPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTaskContainerPropertiesArrayInput)(nil)).Elem(), JobDefinitionTaskContainerPropertiesArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTimeoutInput)(nil)).Elem(), JobDefinitionTimeoutArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTimeoutPtrInput)(nil)).Elem(), JobDefinitionTimeoutArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTmpfsInput)(nil)).Elem(), JobDefinitionTmpfsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTmpfsArrayInput)(nil)).Elem(), JobDefinitionTmpfsArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionUlimitInput)(nil)).Elem(), JobDefinitionUlimitArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionUlimitArrayInput)(nil)).Elem(), JobDefinitionUlimitArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionVolumesInput)(nil)).Elem(), JobDefinitionVolumesArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionVolumesArrayInput)(nil)).Elem(), JobDefinitionVolumesArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionVolumesHostInput)(nil)).Elem(), JobDefinitionVolumesHostArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionVolumesHostPtrInput)(nil)).Elem(), JobDefinitionVolumesHostArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionVolumeInput)(nil)).Elem(), JobDefinitionVolumeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionVolumeArrayInput)(nil)).Elem(), JobDefinitionVolumeArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobQueueComputeEnvironmentOrderInput)(nil)).Elem(), JobQueueComputeEnvironmentOrderArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobQueueComputeEnvironmentOrderArrayInput)(nil)).Elem(), JobQueueComputeEnvironmentOrderArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobQueueJobStateTimeLimitActionInput)(nil)).Elem(), JobQueueJobStateTimeLimitActionArgs{}) @@ -9555,16 +10253,18 @@ func init() { pulumi.RegisterOutputType(ComputeEnvironmentLaunchTemplateSpecificationOverrideArrayOutput{}) pulumi.RegisterOutputType(ComputeEnvironmentUpdatePolicyOutput{}) pulumi.RegisterOutputType(ComputeEnvironmentUpdatePolicyPtrOutput{}) - pulumi.RegisterOutputType(JobDefinitionAuthorizationConfigOutput{}) - pulumi.RegisterOutputType(JobDefinitionAuthorizationConfigPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionContainerPropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionContainerPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionDeviceOutput{}) pulumi.RegisterOutputType(JobDefinitionDeviceArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionEcsPropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionEcsPropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEcsTaskPropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionEcsTaskPropertiesArrayOutput{}) + pulumi.RegisterOutputType(JobDefinitionEfsAuthorizationConfigOutput{}) + pulumi.RegisterOutputType(JobDefinitionEfsAuthorizationConfigPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEfsVolumeConfigurationOutput{}) pulumi.RegisterOutputType(JobDefinitionEfsVolumeConfigurationPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEksContainerOutput{}) @@ -9581,6 +10281,10 @@ func init() { pulumi.RegisterOutputType(JobDefinitionEksEmptyDirPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEksHostPathOutput{}) pulumi.RegisterOutputType(JobDefinitionEksHostPathPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionEksMetadataOutput{}) + pulumi.RegisterOutputType(JobDefinitionEksMetadataPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionEksPodPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionEksPodPropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEksPropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionEksPropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEksSecretOutput{}) @@ -9593,26 +10297,30 @@ func init() { pulumi.RegisterOutputType(JobDefinitionEphemeralStoragePtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEvaluateOnExitOutput{}) pulumi.RegisterOutputType(JobDefinitionEvaluateOnExitArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionFargatePlatformConfigurationOutput{}) - pulumi.RegisterOutputType(JobDefinitionFargatePlatformConfigurationPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionHostOutput{}) + pulumi.RegisterOutputType(JobDefinitionHostPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionImagePullSecretOutput{}) pulumi.RegisterOutputType(JobDefinitionImagePullSecretArrayOutput{}) + pulumi.RegisterOutputType(JobDefinitionJobTimeoutOutput{}) + pulumi.RegisterOutputType(JobDefinitionJobTimeoutPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionLinuxParametersOutput{}) pulumi.RegisterOutputType(JobDefinitionLinuxParametersPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionLogConfigurationOutput{}) pulumi.RegisterOutputType(JobDefinitionLogConfigurationPtrOutput{}) - pulumi.RegisterOutputType(JobDefinitionMetadataOutput{}) - pulumi.RegisterOutputType(JobDefinitionMetadataPtrOutput{}) - pulumi.RegisterOutputType(JobDefinitionMountPointsOutput{}) - pulumi.RegisterOutputType(JobDefinitionMountPointsArrayOutput{}) + pulumi.RegisterOutputType(JobDefinitionMountPointOutput{}) + pulumi.RegisterOutputType(JobDefinitionMountPointArrayOutput{}) + pulumi.RegisterOutputType(JobDefinitionMultiNodeContainerPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionMultiNodeContainerPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionMultiNodeEcsPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionMultiNodeEcsPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionMultiNodeEcsTaskPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionMultiNodeEcsTaskPropertiesArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionNetworkConfigurationOutput{}) pulumi.RegisterOutputType(JobDefinitionNetworkConfigurationPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionNodePropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionNodePropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionNodeRangePropertyOutput{}) pulumi.RegisterOutputType(JobDefinitionNodeRangePropertyArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionPodPropertiesOutput{}) - pulumi.RegisterOutputType(JobDefinitionPodPropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionRepositoryCredentialsOutput{}) pulumi.RegisterOutputType(JobDefinitionRepositoryCredentialsPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionResourceRequirementOutput{}) @@ -9627,16 +10335,12 @@ func init() { pulumi.RegisterOutputType(JobDefinitionTaskContainerDependencyArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionTaskContainerPropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionTaskContainerPropertiesArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionTimeoutOutput{}) - pulumi.RegisterOutputType(JobDefinitionTimeoutPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionTmpfsOutput{}) pulumi.RegisterOutputType(JobDefinitionTmpfsArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionUlimitOutput{}) pulumi.RegisterOutputType(JobDefinitionUlimitArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionVolumesOutput{}) - pulumi.RegisterOutputType(JobDefinitionVolumesArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionVolumesHostOutput{}) - pulumi.RegisterOutputType(JobDefinitionVolumesHostPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionVolumeOutput{}) + pulumi.RegisterOutputType(JobDefinitionVolumeArrayOutput{}) pulumi.RegisterOutputType(JobQueueComputeEnvironmentOrderOutput{}) pulumi.RegisterOutputType(JobQueueComputeEnvironmentOrderArrayOutput{}) pulumi.RegisterOutputType(JobQueueJobStateTimeLimitActionOutput{}) diff --git a/sdk/go/aws/cassandra/getKeyspace.go b/sdk/go/aws/cassandra/getKeyspace.go index d51bb97b8f..6fb231bf40 100644 --- a/sdk/go/aws/cassandra/getKeyspace.go +++ b/sdk/go/aws/cassandra/getKeyspace.go @@ -29,6 +29,15 @@ type LookupKeyspaceArgs struct { } type LookupKeyspaceResult struct { + // Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + ClientSideTimestampsEnabled *bool `pulumi:"clientSideTimestampsEnabled"` + // Specifies the `ReplicationStrategy` of a keyspace. The options are: + // + // - `SINGLE_REGION` for a single Region keyspace (optional) or + // - `MULTI_REGION` for a multi-Region keyspace + // + // If no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in. + ReplicationSpecification *KeyspaceReplicationSpecification `pulumi:"replicationSpecification"` // An array of key-value pairs to apply to this resource. // // For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . @@ -67,6 +76,21 @@ func (o LookupKeyspaceResultOutput) ToLookupKeyspaceResultOutputWithContext(ctx return o } +// Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. +func (o LookupKeyspaceResultOutput) ClientSideTimestampsEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v LookupKeyspaceResult) *bool { return v.ClientSideTimestampsEnabled }).(pulumi.BoolPtrOutput) +} + +// Specifies the `ReplicationStrategy` of a keyspace. The options are: +// +// - `SINGLE_REGION` for a single Region keyspace (optional) or +// - `MULTI_REGION` for a multi-Region keyspace +// +// If no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in. +func (o LookupKeyspaceResultOutput) ReplicationSpecification() KeyspaceReplicationSpecificationPtrOutput { + return o.ApplyT(func(v LookupKeyspaceResult) *KeyspaceReplicationSpecification { return v.ReplicationSpecification }).(KeyspaceReplicationSpecificationPtrOutput) +} + // An array of key-value pairs to apply to this resource. // // For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . diff --git a/sdk/go/aws/cassandra/getType.go b/sdk/go/aws/cassandra/getType.go new file mode 100644 index 0000000000..5748537fb6 --- /dev/null +++ b/sdk/go/aws/cassandra/getType.go @@ -0,0 +1,106 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cassandra + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource schema for AWS::Cassandra::Type +func LookupType(ctx *pulumi.Context, args *LookupTypeArgs, opts ...pulumi.InvokeOption) (*LookupTypeResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupTypeResult + err := ctx.Invoke("aws-native:cassandra:getType", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupTypeArgs struct { + // Name of the Keyspace which contains the User-Defined Type. + KeyspaceName string `pulumi:"keyspaceName"` + // Name of the User-Defined Type. + TypeName string `pulumi:"typeName"` +} + +type LookupTypeResult struct { + // List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + DirectParentTypes []string `pulumi:"directParentTypes"` + // List of Tables that directly reference the User-Defined Type in their columns. + DirectReferringTables []string `pulumi:"directReferringTables"` + // ARN of the Keyspace which contains the User-Defined Type. + KeyspaceArn *string `pulumi:"keyspaceArn"` + // Timestamp of the last time the User-Defined Type's meta data was modified. + LastModifiedTimestamp *float64 `pulumi:"lastModifiedTimestamp"` + // Maximum nesting depth of the User-Defined Type across the field types. + MaxNestingDepth *int `pulumi:"maxNestingDepth"` +} + +func LookupTypeOutput(ctx *pulumi.Context, args LookupTypeOutputArgs, opts ...pulumi.InvokeOption) LookupTypeResultOutput { + return pulumi.ToOutputWithContext(ctx.Context(), args). + ApplyT(func(v interface{}) (LookupTypeResultOutput, error) { + args := v.(LookupTypeArgs) + options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)} + return ctx.InvokeOutput("aws-native:cassandra:getType", args, LookupTypeResultOutput{}, options).(LookupTypeResultOutput), nil + }).(LookupTypeResultOutput) +} + +type LookupTypeOutputArgs struct { + // Name of the Keyspace which contains the User-Defined Type. + KeyspaceName pulumi.StringInput `pulumi:"keyspaceName"` + // Name of the User-Defined Type. + TypeName pulumi.StringInput `pulumi:"typeName"` +} + +func (LookupTypeOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupTypeArgs)(nil)).Elem() +} + +type LookupTypeResultOutput struct{ *pulumi.OutputState } + +func (LookupTypeResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupTypeResult)(nil)).Elem() +} + +func (o LookupTypeResultOutput) ToLookupTypeResultOutput() LookupTypeResultOutput { + return o +} + +func (o LookupTypeResultOutput) ToLookupTypeResultOutputWithContext(ctx context.Context) LookupTypeResultOutput { + return o +} + +// List of parent User-Defined Types that directly reference the User-Defined Type in their fields. +func (o LookupTypeResultOutput) DirectParentTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupTypeResult) []string { return v.DirectParentTypes }).(pulumi.StringArrayOutput) +} + +// List of Tables that directly reference the User-Defined Type in their columns. +func (o LookupTypeResultOutput) DirectReferringTables() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupTypeResult) []string { return v.DirectReferringTables }).(pulumi.StringArrayOutput) +} + +// ARN of the Keyspace which contains the User-Defined Type. +func (o LookupTypeResultOutput) KeyspaceArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTypeResult) *string { return v.KeyspaceArn }).(pulumi.StringPtrOutput) +} + +// Timestamp of the last time the User-Defined Type's meta data was modified. +func (o LookupTypeResultOutput) LastModifiedTimestamp() pulumi.Float64PtrOutput { + return o.ApplyT(func(v LookupTypeResult) *float64 { return v.LastModifiedTimestamp }).(pulumi.Float64PtrOutput) +} + +// Maximum nesting depth of the User-Defined Type across the field types. +func (o LookupTypeResultOutput) MaxNestingDepth() pulumi.IntPtrOutput { + return o.ApplyT(func(v LookupTypeResult) *int { return v.MaxNestingDepth }).(pulumi.IntPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupTypeResultOutput{}) +} diff --git a/sdk/go/aws/cassandra/init.go b/sdk/go/aws/cassandra/init.go index dbae1f47d1..bad5934fc1 100644 --- a/sdk/go/aws/cassandra/init.go +++ b/sdk/go/aws/cassandra/init.go @@ -25,6 +25,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &Keyspace{} case "aws-native:cassandra:Table": r = &Table{} + case "aws-native:cassandra:Type": + r = &Type{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } diff --git a/sdk/go/aws/cassandra/keyspace.go b/sdk/go/aws/cassandra/keyspace.go index 64c762f56d..a3f29c3595 100644 --- a/sdk/go/aws/cassandra/keyspace.go +++ b/sdk/go/aws/cassandra/keyspace.go @@ -120,6 +120,8 @@ import ( type Keyspace struct { pulumi.CustomResourceState + // Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + ClientSideTimestampsEnabled pulumi.BoolPtrOutput `pulumi:"clientSideTimestampsEnabled"` // Name for Cassandra keyspace KeyspaceName pulumi.StringPtrOutput `pulumi:"keyspaceName"` // Specifies the `ReplicationStrategy` of a keyspace. The options are: @@ -144,7 +146,6 @@ func NewKeyspace(ctx *pulumi.Context, replaceOnChanges := pulumi.ReplaceOnChanges([]string{ "keyspaceName", - "replicationSpecification", }) opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) @@ -180,6 +181,8 @@ func (KeyspaceState) ElementType() reflect.Type { } type keyspaceArgs struct { + // Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + ClientSideTimestampsEnabled *bool `pulumi:"clientSideTimestampsEnabled"` // Name for Cassandra keyspace KeyspaceName *string `pulumi:"keyspaceName"` // Specifies the `ReplicationStrategy` of a keyspace. The options are: @@ -197,6 +200,8 @@ type keyspaceArgs struct { // The set of arguments for constructing a Keyspace resource. type KeyspaceArgs struct { + // Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + ClientSideTimestampsEnabled pulumi.BoolPtrInput // Name for Cassandra keyspace KeyspaceName pulumi.StringPtrInput // Specifies the `ReplicationStrategy` of a keyspace. The options are: @@ -249,6 +254,11 @@ func (o KeyspaceOutput) ToKeyspaceOutputWithContext(ctx context.Context) Keyspac return o } +// Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. +func (o KeyspaceOutput) ClientSideTimestampsEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *Keyspace) pulumi.BoolPtrOutput { return v.ClientSideTimestampsEnabled }).(pulumi.BoolPtrOutput) +} + // Name for Cassandra keyspace func (o KeyspaceOutput) KeyspaceName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Keyspace) pulumi.StringPtrOutput { return v.KeyspaceName }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/cassandra/pulumiTypes.go b/sdk/go/aws/cassandra/pulumiTypes.go index 3c37d0304e..6f7bcf1e58 100644 --- a/sdk/go/aws/cassandra/pulumiTypes.go +++ b/sdk/go/aws/cassandra/pulumiTypes.go @@ -1802,6 +1802,106 @@ func (o TableTargetTrackingScalingPolicyConfigurationPtrOutput) TargetValue() pu }).(pulumi.IntPtrOutput) } +type TypeField struct { + FieldName string `pulumi:"fieldName"` + FieldType string `pulumi:"fieldType"` +} + +// TypeFieldInput is an input type that accepts TypeFieldArgs and TypeFieldOutput values. +// You can construct a concrete instance of `TypeFieldInput` via: +// +// TypeFieldArgs{...} +type TypeFieldInput interface { + pulumi.Input + + ToTypeFieldOutput() TypeFieldOutput + ToTypeFieldOutputWithContext(context.Context) TypeFieldOutput +} + +type TypeFieldArgs struct { + FieldName pulumi.StringInput `pulumi:"fieldName"` + FieldType pulumi.StringInput `pulumi:"fieldType"` +} + +func (TypeFieldArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TypeField)(nil)).Elem() +} + +func (i TypeFieldArgs) ToTypeFieldOutput() TypeFieldOutput { + return i.ToTypeFieldOutputWithContext(context.Background()) +} + +func (i TypeFieldArgs) ToTypeFieldOutputWithContext(ctx context.Context) TypeFieldOutput { + return pulumi.ToOutputWithContext(ctx, i).(TypeFieldOutput) +} + +// TypeFieldArrayInput is an input type that accepts TypeFieldArray and TypeFieldArrayOutput values. +// You can construct a concrete instance of `TypeFieldArrayInput` via: +// +// TypeFieldArray{ TypeFieldArgs{...} } +type TypeFieldArrayInput interface { + pulumi.Input + + ToTypeFieldArrayOutput() TypeFieldArrayOutput + ToTypeFieldArrayOutputWithContext(context.Context) TypeFieldArrayOutput +} + +type TypeFieldArray []TypeFieldInput + +func (TypeFieldArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TypeField)(nil)).Elem() +} + +func (i TypeFieldArray) ToTypeFieldArrayOutput() TypeFieldArrayOutput { + return i.ToTypeFieldArrayOutputWithContext(context.Background()) +} + +func (i TypeFieldArray) ToTypeFieldArrayOutputWithContext(ctx context.Context) TypeFieldArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TypeFieldArrayOutput) +} + +type TypeFieldOutput struct{ *pulumi.OutputState } + +func (TypeFieldOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TypeField)(nil)).Elem() +} + +func (o TypeFieldOutput) ToTypeFieldOutput() TypeFieldOutput { + return o +} + +func (o TypeFieldOutput) ToTypeFieldOutputWithContext(ctx context.Context) TypeFieldOutput { + return o +} + +func (o TypeFieldOutput) FieldName() pulumi.StringOutput { + return o.ApplyT(func(v TypeField) string { return v.FieldName }).(pulumi.StringOutput) +} + +func (o TypeFieldOutput) FieldType() pulumi.StringOutput { + return o.ApplyT(func(v TypeField) string { return v.FieldType }).(pulumi.StringOutput) +} + +type TypeFieldArrayOutput struct{ *pulumi.OutputState } + +func (TypeFieldArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TypeField)(nil)).Elem() +} + +func (o TypeFieldArrayOutput) ToTypeFieldArrayOutput() TypeFieldArrayOutput { + return o +} + +func (o TypeFieldArrayOutput) ToTypeFieldArrayOutputWithContext(ctx context.Context) TypeFieldArrayOutput { + return o +} + +func (o TypeFieldArrayOutput) Index(i pulumi.IntInput) TypeFieldOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TypeField { + return vs[0].([]TypeField)[vs[1].(int)] + }).(TypeFieldOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*KeyspaceReplicationSpecificationInput)(nil)).Elem(), KeyspaceReplicationSpecificationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*KeyspaceReplicationSpecificationPtrInput)(nil)).Elem(), KeyspaceReplicationSpecificationArgs{}) @@ -1825,6 +1925,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TableScalingPolicyPtrInput)(nil)).Elem(), TableScalingPolicyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TableTargetTrackingScalingPolicyConfigurationInput)(nil)).Elem(), TableTargetTrackingScalingPolicyConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TableTargetTrackingScalingPolicyConfigurationPtrInput)(nil)).Elem(), TableTargetTrackingScalingPolicyConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TypeFieldInput)(nil)).Elem(), TypeFieldArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TypeFieldArrayInput)(nil)).Elem(), TypeFieldArray{}) pulumi.RegisterOutputType(KeyspaceReplicationSpecificationOutput{}) pulumi.RegisterOutputType(KeyspaceReplicationSpecificationPtrOutput{}) pulumi.RegisterOutputType(TableAutoScalingSettingOutput{}) @@ -1847,4 +1949,6 @@ func init() { pulumi.RegisterOutputType(TableScalingPolicyPtrOutput{}) pulumi.RegisterOutputType(TableTargetTrackingScalingPolicyConfigurationOutput{}) pulumi.RegisterOutputType(TableTargetTrackingScalingPolicyConfigurationPtrOutput{}) + pulumi.RegisterOutputType(TypeFieldOutput{}) + pulumi.RegisterOutputType(TypeFieldArrayOutput{}) } diff --git a/sdk/go/aws/cassandra/type.go b/sdk/go/aws/cassandra/type.go new file mode 100644 index 0000000000..91deb88214 --- /dev/null +++ b/sdk/go/aws/cassandra/type.go @@ -0,0 +1,187 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cassandra + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource schema for AWS::Cassandra::Type +type Type struct { + pulumi.CustomResourceState + + // List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + DirectParentTypes pulumi.StringArrayOutput `pulumi:"directParentTypes"` + // List of Tables that directly reference the User-Defined Type in their columns. + DirectReferringTables pulumi.StringArrayOutput `pulumi:"directReferringTables"` + // Field definitions of the User-Defined Type + Fields TypeFieldArrayOutput `pulumi:"fields"` + // ARN of the Keyspace which contains the User-Defined Type. + KeyspaceArn pulumi.StringOutput `pulumi:"keyspaceArn"` + // Name of the Keyspace which contains the User-Defined Type. + KeyspaceName pulumi.StringOutput `pulumi:"keyspaceName"` + // Timestamp of the last time the User-Defined Type's meta data was modified. + LastModifiedTimestamp pulumi.Float64Output `pulumi:"lastModifiedTimestamp"` + // Maximum nesting depth of the User-Defined Type across the field types. + MaxNestingDepth pulumi.IntOutput `pulumi:"maxNestingDepth"` + // Name of the User-Defined Type. + TypeName pulumi.StringOutput `pulumi:"typeName"` +} + +// NewType registers a new resource with the given unique name, arguments, and options. +func NewType(ctx *pulumi.Context, + name string, args *TypeArgs, opts ...pulumi.ResourceOption) (*Type, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Fields == nil { + return nil, errors.New("invalid value for required argument 'Fields'") + } + if args.KeyspaceName == nil { + return nil, errors.New("invalid value for required argument 'KeyspaceName'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "fields[*]", + "keyspaceName", + "typeName", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Type + err := ctx.RegisterResource("aws-native:cassandra:Type", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetType gets an existing Type resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetType(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *TypeState, opts ...pulumi.ResourceOption) (*Type, error) { + var resource Type + err := ctx.ReadResource("aws-native:cassandra:Type", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Type resources. +type typeState struct { +} + +type TypeState struct { +} + +func (TypeState) ElementType() reflect.Type { + return reflect.TypeOf((*typeState)(nil)).Elem() +} + +type typeArgs struct { + // Field definitions of the User-Defined Type + Fields []TypeField `pulumi:"fields"` + // Name of the Keyspace which contains the User-Defined Type. + KeyspaceName string `pulumi:"keyspaceName"` + // Name of the User-Defined Type. + TypeName *string `pulumi:"typeName"` +} + +// The set of arguments for constructing a Type resource. +type TypeArgs struct { + // Field definitions of the User-Defined Type + Fields TypeFieldArrayInput + // Name of the Keyspace which contains the User-Defined Type. + KeyspaceName pulumi.StringInput + // Name of the User-Defined Type. + TypeName pulumi.StringPtrInput +} + +func (TypeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*typeArgs)(nil)).Elem() +} + +type TypeInput interface { + pulumi.Input + + ToTypeOutput() TypeOutput + ToTypeOutputWithContext(ctx context.Context) TypeOutput +} + +func (*Type) ElementType() reflect.Type { + return reflect.TypeOf((**Type)(nil)).Elem() +} + +func (i *Type) ToTypeOutput() TypeOutput { + return i.ToTypeOutputWithContext(context.Background()) +} + +func (i *Type) ToTypeOutputWithContext(ctx context.Context) TypeOutput { + return pulumi.ToOutputWithContext(ctx, i).(TypeOutput) +} + +type TypeOutput struct{ *pulumi.OutputState } + +func (TypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Type)(nil)).Elem() +} + +func (o TypeOutput) ToTypeOutput() TypeOutput { + return o +} + +func (o TypeOutput) ToTypeOutputWithContext(ctx context.Context) TypeOutput { + return o +} + +// List of parent User-Defined Types that directly reference the User-Defined Type in their fields. +func (o TypeOutput) DirectParentTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v *Type) pulumi.StringArrayOutput { return v.DirectParentTypes }).(pulumi.StringArrayOutput) +} + +// List of Tables that directly reference the User-Defined Type in their columns. +func (o TypeOutput) DirectReferringTables() pulumi.StringArrayOutput { + return o.ApplyT(func(v *Type) pulumi.StringArrayOutput { return v.DirectReferringTables }).(pulumi.StringArrayOutput) +} + +// Field definitions of the User-Defined Type +func (o TypeOutput) Fields() TypeFieldArrayOutput { + return o.ApplyT(func(v *Type) TypeFieldArrayOutput { return v.Fields }).(TypeFieldArrayOutput) +} + +// ARN of the Keyspace which contains the User-Defined Type. +func (o TypeOutput) KeyspaceArn() pulumi.StringOutput { + return o.ApplyT(func(v *Type) pulumi.StringOutput { return v.KeyspaceArn }).(pulumi.StringOutput) +} + +// Name of the Keyspace which contains the User-Defined Type. +func (o TypeOutput) KeyspaceName() pulumi.StringOutput { + return o.ApplyT(func(v *Type) pulumi.StringOutput { return v.KeyspaceName }).(pulumi.StringOutput) +} + +// Timestamp of the last time the User-Defined Type's meta data was modified. +func (o TypeOutput) LastModifiedTimestamp() pulumi.Float64Output { + return o.ApplyT(func(v *Type) pulumi.Float64Output { return v.LastModifiedTimestamp }).(pulumi.Float64Output) +} + +// Maximum nesting depth of the User-Defined Type across the field types. +func (o TypeOutput) MaxNestingDepth() pulumi.IntOutput { + return o.ApplyT(func(v *Type) pulumi.IntOutput { return v.MaxNestingDepth }).(pulumi.IntOutput) +} + +// Name of the User-Defined Type. +func (o TypeOutput) TypeName() pulumi.StringOutput { + return o.ApplyT(func(v *Type) pulumi.StringOutput { return v.TypeName }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*TypeInput)(nil)).Elem(), &Type{}) + pulumi.RegisterOutputType(TypeOutput{}) +} diff --git a/sdk/go/aws/cleanrooms/configuredTable.go b/sdk/go/aws/cleanrooms/configuredTable.go index e05d5a72ff..340df31cfe 100644 --- a/sdk/go/aws/cleanrooms/configuredTable.go +++ b/sdk/go/aws/cleanrooms/configuredTable.go @@ -36,7 +36,7 @@ type ConfiguredTable struct { // A name for the configured table. Name pulumi.StringOutput `pulumi:"name"` // The table that this configured table represents. - TableReference ConfiguredTableTableReferenceOutput `pulumi:"tableReference"` + TableReference pulumi.AnyOutput `pulumi:"tableReference"` // An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. Tags aws.TagArrayOutput `pulumi:"tags"` } @@ -107,7 +107,7 @@ type configuredTableArgs struct { // A name for the configured table. Name *string `pulumi:"name"` // The table that this configured table represents. - TableReference ConfiguredTableTableReference `pulumi:"tableReference"` + TableReference interface{} `pulumi:"tableReference"` // An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. Tags []aws.Tag `pulumi:"tags"` } @@ -125,7 +125,7 @@ type ConfiguredTableArgs struct { // A name for the configured table. Name pulumi.StringPtrInput // The table that this configured table represents. - TableReference ConfiguredTableTableReferenceInput + TableReference pulumi.Input // An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. Tags aws.TagArrayInput } @@ -207,8 +207,8 @@ func (o ConfiguredTableOutput) Name() pulumi.StringOutput { } // The table that this configured table represents. -func (o ConfiguredTableOutput) TableReference() ConfiguredTableTableReferenceOutput { - return o.ApplyT(func(v *ConfiguredTable) ConfiguredTableTableReferenceOutput { return v.TableReference }).(ConfiguredTableTableReferenceOutput) +func (o ConfiguredTableOutput) TableReference() pulumi.AnyOutput { + return o.ApplyT(func(v *ConfiguredTable) pulumi.AnyOutput { return v.TableReference }).(pulumi.AnyOutput) } // An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. diff --git a/sdk/go/aws/cleanrooms/pulumiTypes.go b/sdk/go/aws/cleanrooms/pulumiTypes.go index a37f238c60..6927e86c0e 100644 --- a/sdk/go/aws/cleanrooms/pulumiTypes.go +++ b/sdk/go/aws/cleanrooms/pulumiTypes.go @@ -2127,6 +2127,73 @@ type ConfiguredTableAssociationTag struct { Value string `pulumi:"value"` } +type ConfiguredTableAthenaTableReference struct { + DatabaseName string `pulumi:"databaseName"` + OutputLocation *string `pulumi:"outputLocation"` + TableName string `pulumi:"tableName"` + WorkGroup string `pulumi:"workGroup"` +} + +// ConfiguredTableAthenaTableReferenceInput is an input type that accepts ConfiguredTableAthenaTableReferenceArgs and ConfiguredTableAthenaTableReferenceOutput values. +// You can construct a concrete instance of `ConfiguredTableAthenaTableReferenceInput` via: +// +// ConfiguredTableAthenaTableReferenceArgs{...} +type ConfiguredTableAthenaTableReferenceInput interface { + pulumi.Input + + ToConfiguredTableAthenaTableReferenceOutput() ConfiguredTableAthenaTableReferenceOutput + ToConfiguredTableAthenaTableReferenceOutputWithContext(context.Context) ConfiguredTableAthenaTableReferenceOutput +} + +type ConfiguredTableAthenaTableReferenceArgs struct { + DatabaseName pulumi.StringInput `pulumi:"databaseName"` + OutputLocation pulumi.StringPtrInput `pulumi:"outputLocation"` + TableName pulumi.StringInput `pulumi:"tableName"` + WorkGroup pulumi.StringInput `pulumi:"workGroup"` +} + +func (ConfiguredTableAthenaTableReferenceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableAthenaTableReference)(nil)).Elem() +} + +func (i ConfiguredTableAthenaTableReferenceArgs) ToConfiguredTableAthenaTableReferenceOutput() ConfiguredTableAthenaTableReferenceOutput { + return i.ToConfiguredTableAthenaTableReferenceOutputWithContext(context.Background()) +} + +func (i ConfiguredTableAthenaTableReferenceArgs) ToConfiguredTableAthenaTableReferenceOutputWithContext(ctx context.Context) ConfiguredTableAthenaTableReferenceOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableAthenaTableReferenceOutput) +} + +type ConfiguredTableAthenaTableReferenceOutput struct{ *pulumi.OutputState } + +func (ConfiguredTableAthenaTableReferenceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableAthenaTableReference)(nil)).Elem() +} + +func (o ConfiguredTableAthenaTableReferenceOutput) ToConfiguredTableAthenaTableReferenceOutput() ConfiguredTableAthenaTableReferenceOutput { + return o +} + +func (o ConfiguredTableAthenaTableReferenceOutput) ToConfiguredTableAthenaTableReferenceOutputWithContext(ctx context.Context) ConfiguredTableAthenaTableReferenceOutput { + return o +} + +func (o ConfiguredTableAthenaTableReferenceOutput) DatabaseName() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableAthenaTableReference) string { return v.DatabaseName }).(pulumi.StringOutput) +} + +func (o ConfiguredTableAthenaTableReferenceOutput) OutputLocation() pulumi.StringPtrOutput { + return o.ApplyT(func(v ConfiguredTableAthenaTableReference) *string { return v.OutputLocation }).(pulumi.StringPtrOutput) +} + +func (o ConfiguredTableAthenaTableReferenceOutput) TableName() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableAthenaTableReference) string { return v.TableName }).(pulumi.StringOutput) +} + +func (o ConfiguredTableAthenaTableReferenceOutput) WorkGroup() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableAthenaTableReference) string { return v.WorkGroup }).(pulumi.StringOutput) +} + type ConfiguredTableDifferentialPrivacy struct { Columns []ConfiguredTableDifferentialPrivacyColumn `pulumi:"columns"` } @@ -2357,10 +2424,8 @@ func (o ConfiguredTableDifferentialPrivacyColumnArrayOutput) Index(i pulumi.IntI } type ConfiguredTableGlueTableReference struct { - // The name of the database the AWS Glue table belongs to. DatabaseName string `pulumi:"databaseName"` - // The name of the AWS Glue table. - TableName string `pulumi:"tableName"` + TableName string `pulumi:"tableName"` } // ConfiguredTableGlueTableReferenceInput is an input type that accepts ConfiguredTableGlueTableReferenceArgs and ConfiguredTableGlueTableReferenceOutput values. @@ -2375,10 +2440,8 @@ type ConfiguredTableGlueTableReferenceInput interface { } type ConfiguredTableGlueTableReferenceArgs struct { - // The name of the database the AWS Glue table belongs to. DatabaseName pulumi.StringInput `pulumi:"databaseName"` - // The name of the AWS Glue table. - TableName pulumi.StringInput `pulumi:"tableName"` + TableName pulumi.StringInput `pulumi:"tableName"` } func (ConfiguredTableGlueTableReferenceArgs) ElementType() reflect.Type { @@ -2407,66 +2470,397 @@ func (o ConfiguredTableGlueTableReferenceOutput) ToConfiguredTableGlueTableRefer return o } -// The name of the database the AWS Glue table belongs to. func (o ConfiguredTableGlueTableReferenceOutput) DatabaseName() pulumi.StringOutput { return o.ApplyT(func(v ConfiguredTableGlueTableReference) string { return v.DatabaseName }).(pulumi.StringOutput) } -// The name of the AWS Glue table. func (o ConfiguredTableGlueTableReferenceOutput) TableName() pulumi.StringOutput { return o.ApplyT(func(v ConfiguredTableGlueTableReference) string { return v.TableName }).(pulumi.StringOutput) } -type ConfiguredTableTableReference struct { - // If present, a reference to the AWS Glue table referred to by this table reference. +type ConfiguredTableSnowflakeTableReference struct { + AccountIdentifier string `pulumi:"accountIdentifier"` + DatabaseName string `pulumi:"databaseName"` + SchemaName string `pulumi:"schemaName"` + SecretArn string `pulumi:"secretArn"` + TableName string `pulumi:"tableName"` + TableSchema ConfiguredTableSnowflakeTableSchemaProperties `pulumi:"tableSchema"` +} + +// ConfiguredTableSnowflakeTableReferenceInput is an input type that accepts ConfiguredTableSnowflakeTableReferenceArgs and ConfiguredTableSnowflakeTableReferenceOutput values. +// You can construct a concrete instance of `ConfiguredTableSnowflakeTableReferenceInput` via: +// +// ConfiguredTableSnowflakeTableReferenceArgs{...} +type ConfiguredTableSnowflakeTableReferenceInput interface { + pulumi.Input + + ToConfiguredTableSnowflakeTableReferenceOutput() ConfiguredTableSnowflakeTableReferenceOutput + ToConfiguredTableSnowflakeTableReferenceOutputWithContext(context.Context) ConfiguredTableSnowflakeTableReferenceOutput +} + +type ConfiguredTableSnowflakeTableReferenceArgs struct { + AccountIdentifier pulumi.StringInput `pulumi:"accountIdentifier"` + DatabaseName pulumi.StringInput `pulumi:"databaseName"` + SchemaName pulumi.StringInput `pulumi:"schemaName"` + SecretArn pulumi.StringInput `pulumi:"secretArn"` + TableName pulumi.StringInput `pulumi:"tableName"` + TableSchema ConfiguredTableSnowflakeTableSchemaPropertiesInput `pulumi:"tableSchema"` +} + +func (ConfiguredTableSnowflakeTableReferenceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableSnowflakeTableReference)(nil)).Elem() +} + +func (i ConfiguredTableSnowflakeTableReferenceArgs) ToConfiguredTableSnowflakeTableReferenceOutput() ConfiguredTableSnowflakeTableReferenceOutput { + return i.ToConfiguredTableSnowflakeTableReferenceOutputWithContext(context.Background()) +} + +func (i ConfiguredTableSnowflakeTableReferenceArgs) ToConfiguredTableSnowflakeTableReferenceOutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableReferenceOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableSnowflakeTableReferenceOutput) +} + +type ConfiguredTableSnowflakeTableReferenceOutput struct{ *pulumi.OutputState } + +func (ConfiguredTableSnowflakeTableReferenceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableSnowflakeTableReference)(nil)).Elem() +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) ToConfiguredTableSnowflakeTableReferenceOutput() ConfiguredTableSnowflakeTableReferenceOutput { + return o +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) ToConfiguredTableSnowflakeTableReferenceOutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableReferenceOutput { + return o +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) AccountIdentifier() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableReference) string { return v.AccountIdentifier }).(pulumi.StringOutput) +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) DatabaseName() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableReference) string { return v.DatabaseName }).(pulumi.StringOutput) +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) SchemaName() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableReference) string { return v.SchemaName }).(pulumi.StringOutput) +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) SecretArn() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableReference) string { return v.SecretArn }).(pulumi.StringOutput) +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) TableName() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableReference) string { return v.TableName }).(pulumi.StringOutput) +} + +func (o ConfiguredTableSnowflakeTableReferenceOutput) TableSchema() ConfiguredTableSnowflakeTableSchemaPropertiesOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableReference) ConfiguredTableSnowflakeTableSchemaProperties { + return v.TableSchema + }).(ConfiguredTableSnowflakeTableSchemaPropertiesOutput) +} + +type ConfiguredTableSnowflakeTableSchema0Properties struct { + V1 []ConfiguredTableSnowflakeTableSchemaV1 `pulumi:"v1"` +} + +type ConfiguredTableSnowflakeTableSchemaProperties struct { + V1 []ConfiguredTableSnowflakeTableSchemaV1 `pulumi:"v1"` +} + +// ConfiguredTableSnowflakeTableSchemaPropertiesInput is an input type that accepts ConfiguredTableSnowflakeTableSchemaPropertiesArgs and ConfiguredTableSnowflakeTableSchemaPropertiesOutput values. +// You can construct a concrete instance of `ConfiguredTableSnowflakeTableSchemaPropertiesInput` via: +// +// ConfiguredTableSnowflakeTableSchemaPropertiesArgs{...} +type ConfiguredTableSnowflakeTableSchemaPropertiesInput interface { + pulumi.Input + + ToConfiguredTableSnowflakeTableSchemaPropertiesOutput() ConfiguredTableSnowflakeTableSchemaPropertiesOutput + ToConfiguredTableSnowflakeTableSchemaPropertiesOutputWithContext(context.Context) ConfiguredTableSnowflakeTableSchemaPropertiesOutput +} + +type ConfiguredTableSnowflakeTableSchemaPropertiesArgs struct { + V1 ConfiguredTableSnowflakeTableSchemaV1ArrayInput `pulumi:"v1"` +} + +func (ConfiguredTableSnowflakeTableSchemaPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableSnowflakeTableSchemaProperties)(nil)).Elem() +} + +func (i ConfiguredTableSnowflakeTableSchemaPropertiesArgs) ToConfiguredTableSnowflakeTableSchemaPropertiesOutput() ConfiguredTableSnowflakeTableSchemaPropertiesOutput { + return i.ToConfiguredTableSnowflakeTableSchemaPropertiesOutputWithContext(context.Background()) +} + +func (i ConfiguredTableSnowflakeTableSchemaPropertiesArgs) ToConfiguredTableSnowflakeTableSchemaPropertiesOutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableSchemaPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableSnowflakeTableSchemaPropertiesOutput) +} + +type ConfiguredTableSnowflakeTableSchemaPropertiesOutput struct{ *pulumi.OutputState } + +func (ConfiguredTableSnowflakeTableSchemaPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableSnowflakeTableSchemaProperties)(nil)).Elem() +} + +func (o ConfiguredTableSnowflakeTableSchemaPropertiesOutput) ToConfiguredTableSnowflakeTableSchemaPropertiesOutput() ConfiguredTableSnowflakeTableSchemaPropertiesOutput { + return o +} + +func (o ConfiguredTableSnowflakeTableSchemaPropertiesOutput) ToConfiguredTableSnowflakeTableSchemaPropertiesOutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableSchemaPropertiesOutput { + return o +} + +func (o ConfiguredTableSnowflakeTableSchemaPropertiesOutput) V1() ConfiguredTableSnowflakeTableSchemaV1ArrayOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableSchemaProperties) []ConfiguredTableSnowflakeTableSchemaV1 { + return v.V1 + }).(ConfiguredTableSnowflakeTableSchemaV1ArrayOutput) +} + +type ConfiguredTableSnowflakeTableSchemaV1 struct { + ColumnName string `pulumi:"columnName"` + ColumnType string `pulumi:"columnType"` +} + +// ConfiguredTableSnowflakeTableSchemaV1Input is an input type that accepts ConfiguredTableSnowflakeTableSchemaV1Args and ConfiguredTableSnowflakeTableSchemaV1Output values. +// You can construct a concrete instance of `ConfiguredTableSnowflakeTableSchemaV1Input` via: +// +// ConfiguredTableSnowflakeTableSchemaV1Args{...} +type ConfiguredTableSnowflakeTableSchemaV1Input interface { + pulumi.Input + + ToConfiguredTableSnowflakeTableSchemaV1Output() ConfiguredTableSnowflakeTableSchemaV1Output + ToConfiguredTableSnowflakeTableSchemaV1OutputWithContext(context.Context) ConfiguredTableSnowflakeTableSchemaV1Output +} + +type ConfiguredTableSnowflakeTableSchemaV1Args struct { + ColumnName pulumi.StringInput `pulumi:"columnName"` + ColumnType pulumi.StringInput `pulumi:"columnType"` +} + +func (ConfiguredTableSnowflakeTableSchemaV1Args) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableSnowflakeTableSchemaV1)(nil)).Elem() +} + +func (i ConfiguredTableSnowflakeTableSchemaV1Args) ToConfiguredTableSnowflakeTableSchemaV1Output() ConfiguredTableSnowflakeTableSchemaV1Output { + return i.ToConfiguredTableSnowflakeTableSchemaV1OutputWithContext(context.Background()) +} + +func (i ConfiguredTableSnowflakeTableSchemaV1Args) ToConfiguredTableSnowflakeTableSchemaV1OutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableSchemaV1Output { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableSnowflakeTableSchemaV1Output) +} + +// ConfiguredTableSnowflakeTableSchemaV1ArrayInput is an input type that accepts ConfiguredTableSnowflakeTableSchemaV1Array and ConfiguredTableSnowflakeTableSchemaV1ArrayOutput values. +// You can construct a concrete instance of `ConfiguredTableSnowflakeTableSchemaV1ArrayInput` via: +// +// ConfiguredTableSnowflakeTableSchemaV1Array{ ConfiguredTableSnowflakeTableSchemaV1Args{...} } +type ConfiguredTableSnowflakeTableSchemaV1ArrayInput interface { + pulumi.Input + + ToConfiguredTableSnowflakeTableSchemaV1ArrayOutput() ConfiguredTableSnowflakeTableSchemaV1ArrayOutput + ToConfiguredTableSnowflakeTableSchemaV1ArrayOutputWithContext(context.Context) ConfiguredTableSnowflakeTableSchemaV1ArrayOutput +} + +type ConfiguredTableSnowflakeTableSchemaV1Array []ConfiguredTableSnowflakeTableSchemaV1Input + +func (ConfiguredTableSnowflakeTableSchemaV1Array) ElementType() reflect.Type { + return reflect.TypeOf((*[]ConfiguredTableSnowflakeTableSchemaV1)(nil)).Elem() +} + +func (i ConfiguredTableSnowflakeTableSchemaV1Array) ToConfiguredTableSnowflakeTableSchemaV1ArrayOutput() ConfiguredTableSnowflakeTableSchemaV1ArrayOutput { + return i.ToConfiguredTableSnowflakeTableSchemaV1ArrayOutputWithContext(context.Background()) +} + +func (i ConfiguredTableSnowflakeTableSchemaV1Array) ToConfiguredTableSnowflakeTableSchemaV1ArrayOutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableSchemaV1ArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableSnowflakeTableSchemaV1ArrayOutput) +} + +type ConfiguredTableSnowflakeTableSchemaV1Output struct{ *pulumi.OutputState } + +func (ConfiguredTableSnowflakeTableSchemaV1Output) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableSnowflakeTableSchemaV1)(nil)).Elem() +} + +func (o ConfiguredTableSnowflakeTableSchemaV1Output) ToConfiguredTableSnowflakeTableSchemaV1Output() ConfiguredTableSnowflakeTableSchemaV1Output { + return o +} + +func (o ConfiguredTableSnowflakeTableSchemaV1Output) ToConfiguredTableSnowflakeTableSchemaV1OutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableSchemaV1Output { + return o +} + +func (o ConfiguredTableSnowflakeTableSchemaV1Output) ColumnName() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableSchemaV1) string { return v.ColumnName }).(pulumi.StringOutput) +} + +func (o ConfiguredTableSnowflakeTableSchemaV1Output) ColumnType() pulumi.StringOutput { + return o.ApplyT(func(v ConfiguredTableSnowflakeTableSchemaV1) string { return v.ColumnType }).(pulumi.StringOutput) +} + +type ConfiguredTableSnowflakeTableSchemaV1ArrayOutput struct{ *pulumi.OutputState } + +func (ConfiguredTableSnowflakeTableSchemaV1ArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ConfiguredTableSnowflakeTableSchemaV1)(nil)).Elem() +} + +func (o ConfiguredTableSnowflakeTableSchemaV1ArrayOutput) ToConfiguredTableSnowflakeTableSchemaV1ArrayOutput() ConfiguredTableSnowflakeTableSchemaV1ArrayOutput { + return o +} + +func (o ConfiguredTableSnowflakeTableSchemaV1ArrayOutput) ToConfiguredTableSnowflakeTableSchemaV1ArrayOutputWithContext(ctx context.Context) ConfiguredTableSnowflakeTableSchemaV1ArrayOutput { + return o +} + +func (o ConfiguredTableSnowflakeTableSchemaV1ArrayOutput) Index(i pulumi.IntInput) ConfiguredTableSnowflakeTableSchemaV1Output { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ConfiguredTableSnowflakeTableSchemaV1 { + return vs[0].([]ConfiguredTableSnowflakeTableSchemaV1)[vs[1].(int)] + }).(ConfiguredTableSnowflakeTableSchemaV1Output) +} + +type ConfiguredTableTableReference0Properties struct { Glue ConfiguredTableGlueTableReference `pulumi:"glue"` } -// ConfiguredTableTableReferenceInput is an input type that accepts ConfiguredTableTableReferenceArgs and ConfiguredTableTableReferenceOutput values. -// You can construct a concrete instance of `ConfiguredTableTableReferenceInput` via: +// ConfiguredTableTableReference0PropertiesInput is an input type that accepts ConfiguredTableTableReference0PropertiesArgs and ConfiguredTableTableReference0PropertiesOutput values. +// You can construct a concrete instance of `ConfiguredTableTableReference0PropertiesInput` via: // -// ConfiguredTableTableReferenceArgs{...} -type ConfiguredTableTableReferenceInput interface { +// ConfiguredTableTableReference0PropertiesArgs{...} +type ConfiguredTableTableReference0PropertiesInput interface { pulumi.Input - ToConfiguredTableTableReferenceOutput() ConfiguredTableTableReferenceOutput - ToConfiguredTableTableReferenceOutputWithContext(context.Context) ConfiguredTableTableReferenceOutput + ToConfiguredTableTableReference0PropertiesOutput() ConfiguredTableTableReference0PropertiesOutput + ToConfiguredTableTableReference0PropertiesOutputWithContext(context.Context) ConfiguredTableTableReference0PropertiesOutput } -type ConfiguredTableTableReferenceArgs struct { - // If present, a reference to the AWS Glue table referred to by this table reference. +type ConfiguredTableTableReference0PropertiesArgs struct { Glue ConfiguredTableGlueTableReferenceInput `pulumi:"glue"` } -func (ConfiguredTableTableReferenceArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ConfiguredTableTableReference)(nil)).Elem() +func (ConfiguredTableTableReference0PropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableTableReference0Properties)(nil)).Elem() +} + +func (i ConfiguredTableTableReference0PropertiesArgs) ToConfiguredTableTableReference0PropertiesOutput() ConfiguredTableTableReference0PropertiesOutput { + return i.ToConfiguredTableTableReference0PropertiesOutputWithContext(context.Background()) +} + +func (i ConfiguredTableTableReference0PropertiesArgs) ToConfiguredTableTableReference0PropertiesOutputWithContext(ctx context.Context) ConfiguredTableTableReference0PropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableTableReference0PropertiesOutput) +} + +type ConfiguredTableTableReference0PropertiesOutput struct{ *pulumi.OutputState } + +func (ConfiguredTableTableReference0PropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableTableReference0Properties)(nil)).Elem() +} + +func (o ConfiguredTableTableReference0PropertiesOutput) ToConfiguredTableTableReference0PropertiesOutput() ConfiguredTableTableReference0PropertiesOutput { + return o +} + +func (o ConfiguredTableTableReference0PropertiesOutput) ToConfiguredTableTableReference0PropertiesOutputWithContext(ctx context.Context) ConfiguredTableTableReference0PropertiesOutput { + return o +} + +func (o ConfiguredTableTableReference0PropertiesOutput) Glue() ConfiguredTableGlueTableReferenceOutput { + return o.ApplyT(func(v ConfiguredTableTableReference0Properties) ConfiguredTableGlueTableReference { return v.Glue }).(ConfiguredTableGlueTableReferenceOutput) +} + +type ConfiguredTableTableReference1Properties struct { + Snowflake ConfiguredTableSnowflakeTableReference `pulumi:"snowflake"` +} + +// ConfiguredTableTableReference1PropertiesInput is an input type that accepts ConfiguredTableTableReference1PropertiesArgs and ConfiguredTableTableReference1PropertiesOutput values. +// You can construct a concrete instance of `ConfiguredTableTableReference1PropertiesInput` via: +// +// ConfiguredTableTableReference1PropertiesArgs{...} +type ConfiguredTableTableReference1PropertiesInput interface { + pulumi.Input + + ToConfiguredTableTableReference1PropertiesOutput() ConfiguredTableTableReference1PropertiesOutput + ToConfiguredTableTableReference1PropertiesOutputWithContext(context.Context) ConfiguredTableTableReference1PropertiesOutput +} + +type ConfiguredTableTableReference1PropertiesArgs struct { + Snowflake ConfiguredTableSnowflakeTableReferenceInput `pulumi:"snowflake"` +} + +func (ConfiguredTableTableReference1PropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableTableReference1Properties)(nil)).Elem() +} + +func (i ConfiguredTableTableReference1PropertiesArgs) ToConfiguredTableTableReference1PropertiesOutput() ConfiguredTableTableReference1PropertiesOutput { + return i.ToConfiguredTableTableReference1PropertiesOutputWithContext(context.Background()) +} + +func (i ConfiguredTableTableReference1PropertiesArgs) ToConfiguredTableTableReference1PropertiesOutputWithContext(ctx context.Context) ConfiguredTableTableReference1PropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableTableReference1PropertiesOutput) +} + +type ConfiguredTableTableReference1PropertiesOutput struct{ *pulumi.OutputState } + +func (ConfiguredTableTableReference1PropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableTableReference1Properties)(nil)).Elem() +} + +func (o ConfiguredTableTableReference1PropertiesOutput) ToConfiguredTableTableReference1PropertiesOutput() ConfiguredTableTableReference1PropertiesOutput { + return o +} + +func (o ConfiguredTableTableReference1PropertiesOutput) ToConfiguredTableTableReference1PropertiesOutputWithContext(ctx context.Context) ConfiguredTableTableReference1PropertiesOutput { + return o +} + +func (o ConfiguredTableTableReference1PropertiesOutput) Snowflake() ConfiguredTableSnowflakeTableReferenceOutput { + return o.ApplyT(func(v ConfiguredTableTableReference1Properties) ConfiguredTableSnowflakeTableReference { + return v.Snowflake + }).(ConfiguredTableSnowflakeTableReferenceOutput) +} + +type ConfiguredTableTableReference2Properties struct { + Athena ConfiguredTableAthenaTableReference `pulumi:"athena"` +} + +// ConfiguredTableTableReference2PropertiesInput is an input type that accepts ConfiguredTableTableReference2PropertiesArgs and ConfiguredTableTableReference2PropertiesOutput values. +// You can construct a concrete instance of `ConfiguredTableTableReference2PropertiesInput` via: +// +// ConfiguredTableTableReference2PropertiesArgs{...} +type ConfiguredTableTableReference2PropertiesInput interface { + pulumi.Input + + ToConfiguredTableTableReference2PropertiesOutput() ConfiguredTableTableReference2PropertiesOutput + ToConfiguredTableTableReference2PropertiesOutputWithContext(context.Context) ConfiguredTableTableReference2PropertiesOutput +} + +type ConfiguredTableTableReference2PropertiesArgs struct { + Athena ConfiguredTableAthenaTableReferenceInput `pulumi:"athena"` +} + +func (ConfiguredTableTableReference2PropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableTableReference2Properties)(nil)).Elem() } -func (i ConfiguredTableTableReferenceArgs) ToConfiguredTableTableReferenceOutput() ConfiguredTableTableReferenceOutput { - return i.ToConfiguredTableTableReferenceOutputWithContext(context.Background()) +func (i ConfiguredTableTableReference2PropertiesArgs) ToConfiguredTableTableReference2PropertiesOutput() ConfiguredTableTableReference2PropertiesOutput { + return i.ToConfiguredTableTableReference2PropertiesOutputWithContext(context.Background()) } -func (i ConfiguredTableTableReferenceArgs) ToConfiguredTableTableReferenceOutputWithContext(ctx context.Context) ConfiguredTableTableReferenceOutput { - return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableTableReferenceOutput) +func (i ConfiguredTableTableReference2PropertiesArgs) ToConfiguredTableTableReference2PropertiesOutputWithContext(ctx context.Context) ConfiguredTableTableReference2PropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfiguredTableTableReference2PropertiesOutput) } -type ConfiguredTableTableReferenceOutput struct{ *pulumi.OutputState } +type ConfiguredTableTableReference2PropertiesOutput struct{ *pulumi.OutputState } -func (ConfiguredTableTableReferenceOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ConfiguredTableTableReference)(nil)).Elem() +func (ConfiguredTableTableReference2PropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfiguredTableTableReference2Properties)(nil)).Elem() } -func (o ConfiguredTableTableReferenceOutput) ToConfiguredTableTableReferenceOutput() ConfiguredTableTableReferenceOutput { +func (o ConfiguredTableTableReference2PropertiesOutput) ToConfiguredTableTableReference2PropertiesOutput() ConfiguredTableTableReference2PropertiesOutput { return o } -func (o ConfiguredTableTableReferenceOutput) ToConfiguredTableTableReferenceOutputWithContext(ctx context.Context) ConfiguredTableTableReferenceOutput { +func (o ConfiguredTableTableReference2PropertiesOutput) ToConfiguredTableTableReference2PropertiesOutputWithContext(ctx context.Context) ConfiguredTableTableReference2PropertiesOutput { return o } -// If present, a reference to the AWS Glue table referred to by this table reference. -func (o ConfiguredTableTableReferenceOutput) Glue() ConfiguredTableGlueTableReferenceOutput { - return o.ApplyT(func(v ConfiguredTableTableReference) ConfiguredTableGlueTableReference { return v.Glue }).(ConfiguredTableGlueTableReferenceOutput) +func (o ConfiguredTableTableReference2PropertiesOutput) Athena() ConfiguredTableAthenaTableReferenceOutput { + return o.ApplyT(func(v ConfiguredTableTableReference2Properties) ConfiguredTableAthenaTableReference { return v.Athena }).(ConfiguredTableAthenaTableReferenceOutput) } type ConfiguredTableTag struct { @@ -3949,12 +4343,19 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableAssociationAnalysisRulePolicyV10PropertiesInput)(nil)).Elem(), ConfiguredTableAssociationAnalysisRulePolicyV10PropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableAssociationAnalysisRulePolicyV11PropertiesInput)(nil)).Elem(), ConfiguredTableAssociationAnalysisRulePolicyV11PropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableAssociationAnalysisRulePolicyV12PropertiesInput)(nil)).Elem(), ConfiguredTableAssociationAnalysisRulePolicyV12PropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableAthenaTableReferenceInput)(nil)).Elem(), ConfiguredTableAthenaTableReferenceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableDifferentialPrivacyInput)(nil)).Elem(), ConfiguredTableDifferentialPrivacyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableDifferentialPrivacyPtrInput)(nil)).Elem(), ConfiguredTableDifferentialPrivacyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableDifferentialPrivacyColumnInput)(nil)).Elem(), ConfiguredTableDifferentialPrivacyColumnArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableDifferentialPrivacyColumnArrayInput)(nil)).Elem(), ConfiguredTableDifferentialPrivacyColumnArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableGlueTableReferenceInput)(nil)).Elem(), ConfiguredTableGlueTableReferenceArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTableReferenceInput)(nil)).Elem(), ConfiguredTableTableReferenceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableSnowflakeTableReferenceInput)(nil)).Elem(), ConfiguredTableSnowflakeTableReferenceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableSnowflakeTableSchemaPropertiesInput)(nil)).Elem(), ConfiguredTableSnowflakeTableSchemaPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableSnowflakeTableSchemaV1Input)(nil)).Elem(), ConfiguredTableSnowflakeTableSchemaV1Args{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableSnowflakeTableSchemaV1ArrayInput)(nil)).Elem(), ConfiguredTableSnowflakeTableSchemaV1Array{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTableReference0PropertiesInput)(nil)).Elem(), ConfiguredTableTableReference0PropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTableReference1PropertiesInput)(nil)).Elem(), ConfiguredTableTableReference1PropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTableReference2PropertiesInput)(nil)).Elem(), ConfiguredTableTableReference2PropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*IdMappingTableInputReferenceConfigInput)(nil)).Elem(), IdMappingTableInputReferenceConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*IdNamespaceAssociationIdMappingConfigInput)(nil)).Elem(), IdNamespaceAssociationIdMappingConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*IdNamespaceAssociationIdMappingConfigPtrInput)(nil)).Elem(), IdNamespaceAssociationIdMappingConfigArgs{}) @@ -4005,12 +4406,19 @@ func init() { pulumi.RegisterOutputType(ConfiguredTableAssociationAnalysisRulePolicyV10PropertiesOutput{}) pulumi.RegisterOutputType(ConfiguredTableAssociationAnalysisRulePolicyV11PropertiesOutput{}) pulumi.RegisterOutputType(ConfiguredTableAssociationAnalysisRulePolicyV12PropertiesOutput{}) + pulumi.RegisterOutputType(ConfiguredTableAthenaTableReferenceOutput{}) pulumi.RegisterOutputType(ConfiguredTableDifferentialPrivacyOutput{}) pulumi.RegisterOutputType(ConfiguredTableDifferentialPrivacyPtrOutput{}) pulumi.RegisterOutputType(ConfiguredTableDifferentialPrivacyColumnOutput{}) pulumi.RegisterOutputType(ConfiguredTableDifferentialPrivacyColumnArrayOutput{}) pulumi.RegisterOutputType(ConfiguredTableGlueTableReferenceOutput{}) - pulumi.RegisterOutputType(ConfiguredTableTableReferenceOutput{}) + pulumi.RegisterOutputType(ConfiguredTableSnowflakeTableReferenceOutput{}) + pulumi.RegisterOutputType(ConfiguredTableSnowflakeTableSchemaPropertiesOutput{}) + pulumi.RegisterOutputType(ConfiguredTableSnowflakeTableSchemaV1Output{}) + pulumi.RegisterOutputType(ConfiguredTableSnowflakeTableSchemaV1ArrayOutput{}) + pulumi.RegisterOutputType(ConfiguredTableTableReference0PropertiesOutput{}) + pulumi.RegisterOutputType(ConfiguredTableTableReference1PropertiesOutput{}) + pulumi.RegisterOutputType(ConfiguredTableTableReference2PropertiesOutput{}) pulumi.RegisterOutputType(IdMappingTableInputReferenceConfigOutput{}) pulumi.RegisterOutputType(IdMappingTableInputReferencePropertiesOutput{}) pulumi.RegisterOutputType(IdMappingTableInputReferencePropertiesPtrOutput{}) diff --git a/sdk/go/aws/cloudformation/getStack.go b/sdk/go/aws/cloudformation/getStack.go index ae0d6d673e..6966803ba6 100644 --- a/sdk/go/aws/cloudformation/getStack.go +++ b/sdk/go/aws/cloudformation/getStack.go @@ -29,7 +29,7 @@ type LookupStackArgs struct { } type LookupStackResult struct { - // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. // // - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` // @@ -39,30 +39,30 @@ type LookupStackResult struct { // // - If you have IAM resources, you can specify either capability. // - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - // - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + // - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. // // If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. // - // - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - // - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - // - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - // - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - // - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - // - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + // - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + // - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + // - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + // - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + // - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + // - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) // - // For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + // For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . // - `CAPABILITY_AUTO_EXPAND` // - // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . // // If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. // // > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. // > - // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. // - // For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + // For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . Capabilities []StackCapabilitiesItem `pulumi:"capabilities"` // The unique ID of the change set. ChangeSetId *string `pulumi:"changeSetId"` @@ -74,9 +74,9 @@ type LookupStackResult struct { // // Default: `false` DisableRollback *bool `pulumi:"disableRollback"` - // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. // - // For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + // For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. EnableTerminationProtection *bool `pulumi:"enableTerminationProtection"` // The time the stack was last updated. This field will only be returned if the stack has been updated at least once. LastUpdateTime *string `pulumi:"lastUpdateTime"` @@ -96,9 +96,9 @@ type LookupStackResult struct { // // For more information, see [Embed stacks within other stacks using nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) in the *AWS CloudFormation User Guide* . ParentId *string `pulumi:"parentId"` - // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. // - // If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + // If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. RoleArn *string `pulumi:"roleArn"` // For nested stacks--stacks created as resources for another stack--the stack ID of the top-level stack to which the nested stack ultimately belongs. // @@ -106,7 +106,7 @@ type LookupStackResult struct { RootId *string `pulumi:"rootId"` // Unique identifier of the stack. StackId *string `pulumi:"stackId"` - // Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + // Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. StackPolicyBody interface{} `pulumi:"stackPolicyBody"` @@ -116,7 +116,7 @@ type LookupStackResult struct { StackStatusReason *string `pulumi:"stackStatusReason"` // Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. Tags []aws.Tag `pulumi:"tags"` - // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. // @@ -160,7 +160,7 @@ func (o LookupStackResultOutput) ToLookupStackResultOutputWithContext(ctx contex return o } -// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. +// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. // // - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` // @@ -170,30 +170,30 @@ func (o LookupStackResultOutput) ToLookupStackResultOutputWithContext(ctx contex // // - If you have IAM resources, you can specify either capability. // - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . -// - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. +// - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. // // If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. // -// - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) -// - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) -// - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) -// - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) -// - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) -// - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) -// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) +// - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) +// - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) +// - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) +// - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) +// - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) +// - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) +// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) // -// For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . +// For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . // - `CAPABILITY_AUTO_EXPAND` // -// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . +// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . // // If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. // // > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. // > -// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. +// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. // -// For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . +// For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . func (o LookupStackResultOutput) Capabilities() StackCapabilitiesItemArrayOutput { return o.ApplyT(func(v LookupStackResult) []StackCapabilitiesItem { return v.Capabilities }).(StackCapabilitiesItemArrayOutput) } @@ -220,9 +220,9 @@ func (o LookupStackResultOutput) DisableRollback() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupStackResult) *bool { return v.DisableRollback }).(pulumi.BoolPtrOutput) } -// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. +// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. // -// For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. +// For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. func (o LookupStackResultOutput) EnableTerminationProtection() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupStackResult) *bool { return v.EnableTerminationProtection }).(pulumi.BoolPtrOutput) } @@ -260,9 +260,9 @@ func (o LookupStackResultOutput) ParentId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStackResult) *string { return v.ParentId }).(pulumi.StringPtrOutput) } -// The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. +// The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. // -// If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. +// If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. func (o LookupStackResultOutput) RoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStackResult) *string { return v.RoleArn }).(pulumi.StringPtrOutput) } @@ -279,7 +279,7 @@ func (o LookupStackResultOutput) StackId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStackResult) *string { return v.StackId }).(pulumi.StringPtrOutput) } -// Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. +// Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. func (o LookupStackResultOutput) StackPolicyBody() pulumi.AnyOutput { @@ -301,7 +301,7 @@ func (o LookupStackResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupStackResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } -// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. +// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. // diff --git a/sdk/go/aws/cloudformation/pulumiTypes.go b/sdk/go/aws/cloudformation/pulumiTypes.go index 9943b43881..3774006e70 100644 --- a/sdk/go/aws/cloudformation/pulumiTypes.go +++ b/sdk/go/aws/cloudformation/pulumiTypes.go @@ -1716,13 +1716,13 @@ type StackSetOperationPreferences struct { // If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar. // - `SOFT_FAILURE_TOLERANCE` : This option decouples `FailureToleranceCount` from the actual concurrency. This allows stack set operations to run at the concurrency level set by the `MaxConcurrentCount` value, or `MaxConcurrentPercentage` , regardless of the number of failures. ConcurrencyMode *StackSetConcurrencyMode `pulumi:"concurrencyMode"` - // The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + // The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). FailureToleranceCount *int `pulumi:"failureToleranceCount"` - // The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + // The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // - // When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + // When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. FailureTolerancePercentage *int `pulumi:"failureTolerancePercentage"` @@ -1734,7 +1734,7 @@ type StackSetOperationPreferences struct { MaxConcurrentCount *int `pulumi:"maxConcurrentCount"` // The maximum percentage of accounts in which to perform this operation at one time. // - // When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + // When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. // // Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. // @@ -1768,13 +1768,13 @@ type StackSetOperationPreferencesArgs struct { // If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar. // - `SOFT_FAILURE_TOLERANCE` : This option decouples `FailureToleranceCount` from the actual concurrency. This allows stack set operations to run at the concurrency level set by the `MaxConcurrentCount` value, or `MaxConcurrentPercentage` , regardless of the number of failures. ConcurrencyMode StackSetConcurrencyModePtrInput `pulumi:"concurrencyMode"` - // The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + // The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). FailureToleranceCount pulumi.IntPtrInput `pulumi:"failureToleranceCount"` - // The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + // The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // - // When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + // When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. FailureTolerancePercentage pulumi.IntPtrInput `pulumi:"failureTolerancePercentage"` @@ -1786,7 +1786,7 @@ type StackSetOperationPreferencesArgs struct { MaxConcurrentCount pulumi.IntPtrInput `pulumi:"maxConcurrentCount"` // The maximum percentage of accounts in which to perform this operation at one time. // - // When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + // When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. // // Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. // @@ -1888,16 +1888,16 @@ func (o StackSetOperationPreferencesOutput) ConcurrencyMode() StackSetConcurrenc return o.ApplyT(func(v StackSetOperationPreferences) *StackSetConcurrencyMode { return v.ConcurrencyMode }).(StackSetConcurrencyModePtrOutput) } -// The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. +// The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). func (o StackSetOperationPreferencesOutput) FailureToleranceCount() pulumi.IntPtrOutput { return o.ApplyT(func(v StackSetOperationPreferences) *int { return v.FailureToleranceCount }).(pulumi.IntPtrOutput) } -// The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. +// The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // -// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. +// When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. func (o StackSetOperationPreferencesOutput) FailureTolerancePercentage() pulumi.IntPtrOutput { @@ -1915,7 +1915,7 @@ func (o StackSetOperationPreferencesOutput) MaxConcurrentCount() pulumi.IntPtrOu // The maximum percentage of accounts in which to perform this operation at one time. // -// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. +// When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. // // Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. // @@ -1975,7 +1975,7 @@ func (o StackSetOperationPreferencesPtrOutput) ConcurrencyMode() StackSetConcurr }).(StackSetConcurrencyModePtrOutput) } -// The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. +// The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). func (o StackSetOperationPreferencesPtrOutput) FailureToleranceCount() pulumi.IntPtrOutput { @@ -1987,9 +1987,9 @@ func (o StackSetOperationPreferencesPtrOutput) FailureToleranceCount() pulumi.In }).(pulumi.IntPtrOutput) } -// The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. +// The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. // -// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. +// When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. func (o StackSetOperationPreferencesPtrOutput) FailureTolerancePercentage() pulumi.IntPtrOutput { @@ -2017,7 +2017,7 @@ func (o StackSetOperationPreferencesPtrOutput) MaxConcurrentCount() pulumi.IntPt // The maximum percentage of accounts in which to perform this operation at one time. // -// When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. +// When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. // // Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. // diff --git a/sdk/go/aws/cloudformation/stack.go b/sdk/go/aws/cloudformation/stack.go index 6a708cc7c8..cb13fd8aea 100644 --- a/sdk/go/aws/cloudformation/stack.go +++ b/sdk/go/aws/cloudformation/stack.go @@ -16,7 +16,7 @@ import ( type Stack struct { pulumi.CustomResourceState - // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. // // - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` // @@ -26,30 +26,30 @@ type Stack struct { // // - If you have IAM resources, you can specify either capability. // - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - // - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + // - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. // // If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. // - // - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - // - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - // - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - // - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - // - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - // - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + // - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + // - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + // - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + // - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + // - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + // - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) // - // For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + // For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . // - `CAPABILITY_AUTO_EXPAND` // - // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . // // If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. // // > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. // > - // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. // - // For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + // For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . Capabilities StackCapabilitiesItemArrayOutput `pulumi:"capabilities"` // The unique ID of the change set. ChangeSetId pulumi.StringOutput `pulumi:"changeSetId"` @@ -61,9 +61,9 @@ type Stack struct { // // Default: `false` DisableRollback pulumi.BoolPtrOutput `pulumi:"disableRollback"` - // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. // - // For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + // For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. EnableTerminationProtection pulumi.BoolPtrOutput `pulumi:"enableTerminationProtection"` // The time the stack was last updated. This field will only be returned if the stack has been updated at least once. LastUpdateTime pulumi.StringOutput `pulumi:"lastUpdateTime"` @@ -83,9 +83,9 @@ type Stack struct { // // For more information, see [Embed stacks within other stacks using nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) in the *AWS CloudFormation User Guide* . ParentId pulumi.StringOutput `pulumi:"parentId"` - // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. // - // If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + // If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` // For nested stacks--stacks created as resources for another stack--the stack ID of the top-level stack to which the nested stack ultimately belongs. // @@ -97,7 +97,7 @@ type Stack struct { // // > A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetical character and can't be longer than 128 characters. StackName pulumi.StringOutput `pulumi:"stackName"` - // Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + // Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. StackPolicyBody pulumi.AnyOutput `pulumi:"stackPolicyBody"` @@ -109,13 +109,13 @@ type Stack struct { StackStatusReason pulumi.StringPtrOutput `pulumi:"stackStatusReason"` // Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. Tags aws.TagArrayOutput `pulumi:"tags"` - // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. TemplateBody pulumi.AnyOutput `pulumi:"templateBody"` - // Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + // Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. TemplateUrl pulumi.StringPtrOutput `pulumi:"templateUrl"` @@ -169,7 +169,7 @@ func (StackState) ElementType() reflect.Type { } type stackArgs struct { - // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. // // - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` // @@ -179,30 +179,30 @@ type stackArgs struct { // // - If you have IAM resources, you can specify either capability. // - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - // - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + // - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. // // If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. // - // - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - // - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - // - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - // - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - // - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - // - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + // - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + // - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + // - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + // - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + // - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + // - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) // - // For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + // For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . // - `CAPABILITY_AUTO_EXPAND` // - // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . // // If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. // // > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. // > - // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. // - // For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + // For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . Capabilities []StackCapabilitiesItem `pulumi:"capabilities"` // A user-defined description associated with the stack. Description *string `pulumi:"description"` @@ -210,9 +210,9 @@ type stackArgs struct { // // Default: `false` DisableRollback *bool `pulumi:"disableRollback"` - // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. // - // For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + // For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. EnableTerminationProtection *bool `pulumi:"enableTerminationProtection"` // The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI). NotificationArns []string `pulumi:"notificationArns"` @@ -224,15 +224,15 @@ type stackArgs struct { // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. Parameters map[string]string `pulumi:"parameters"` - // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. // - // If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + // If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. RoleArn *string `pulumi:"roleArn"` // The name that's associated with the stack. The name must be unique in the Region in which you are creating the stack. // // > A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetical character and can't be longer than 128 characters. StackName *string `pulumi:"stackName"` - // Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + // Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. StackPolicyBody interface{} `pulumi:"stackPolicyBody"` @@ -242,13 +242,13 @@ type stackArgs struct { StackStatusReason *string `pulumi:"stackStatusReason"` // Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. Tags []aws.Tag `pulumi:"tags"` - // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. TemplateBody interface{} `pulumi:"templateBody"` - // Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + // Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. TemplateUrl *string `pulumi:"templateUrl"` @@ -260,7 +260,7 @@ type stackArgs struct { // The set of arguments for constructing a Stack resource. type StackArgs struct { - // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + // In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. // // - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` // @@ -270,30 +270,30 @@ type StackArgs struct { // // - If you have IAM resources, you can specify either capability. // - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - // - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + // - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. // // If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. // - // - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - // - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - // - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - // - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - // - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - // - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + // - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + // - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + // - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + // - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + // - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + // - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + // - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) // - // For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + // For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . // - `CAPABILITY_AUTO_EXPAND` // - // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + // Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . // // If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. // // > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. // > - // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + // > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. // - // For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + // For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . Capabilities StackCapabilitiesItemArrayInput // A user-defined description associated with the stack. Description pulumi.StringPtrInput @@ -301,9 +301,9 @@ type StackArgs struct { // // Default: `false` DisableRollback pulumi.BoolPtrInput - // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + // Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. // - // For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + // For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. EnableTerminationProtection pulumi.BoolPtrInput // The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI). NotificationArns pulumi.StringArrayInput @@ -315,15 +315,15 @@ type StackArgs struct { // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. Parameters pulumi.StringMapInput - // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. // - // If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + // If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. RoleArn pulumi.StringPtrInput // The name that's associated with the stack. The name must be unique in the Region in which you are creating the stack. // // > A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetical character and can't be longer than 128 characters. StackName pulumi.StringPtrInput - // Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + // Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. StackPolicyBody pulumi.Input @@ -333,13 +333,13 @@ type StackArgs struct { StackStatusReason pulumi.StringPtrInput // Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. Tags aws.TagArrayInput - // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + // Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. TemplateBody pulumi.Input - // Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + // Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. TemplateUrl pulumi.StringPtrInput @@ -386,7 +386,7 @@ func (o StackOutput) ToStackOutputWithContext(ctx context.Context) StackOutput { return o } -// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. +// In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. // // - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` // @@ -396,30 +396,30 @@ func (o StackOutput) ToStackOutputWithContext(ctx context.Context) StackOutput { // // - If you have IAM resources, you can specify either capability. // - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . -// - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. +// - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. // // If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. // -// - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) -// - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) -// - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) -// - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) -// - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) -// - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) -// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) +// - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) +// - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) +// - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) +// - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) +// - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) +// - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) +// - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) // -// For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . +// For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . // - `CAPABILITY_AUTO_EXPAND` // -// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . +// Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . // // If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. // // > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. // > -// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. +// > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. // -// For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . +// For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . func (o StackOutput) Capabilities() StackCapabilitiesItemArrayOutput { return o.ApplyT(func(v *Stack) StackCapabilitiesItemArrayOutput { return v.Capabilities }).(StackCapabilitiesItemArrayOutput) } @@ -446,9 +446,9 @@ func (o StackOutput) DisableRollback() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Stack) pulumi.BoolPtrOutput { return v.DisableRollback }).(pulumi.BoolPtrOutput) } -// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. +// Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. // -// For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. +// For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. func (o StackOutput) EnableTerminationProtection() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Stack) pulumi.BoolPtrOutput { return v.EnableTerminationProtection }).(pulumi.BoolPtrOutput) } @@ -486,9 +486,9 @@ func (o StackOutput) ParentId() pulumi.StringOutput { return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.ParentId }).(pulumi.StringOutput) } -// The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. +// The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. // -// If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. +// If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. func (o StackOutput) RoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.RoleArn }).(pulumi.StringPtrOutput) } @@ -512,7 +512,7 @@ func (o StackOutput) StackName() pulumi.StringOutput { return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.StackName }).(pulumi.StringOutput) } -// Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. +// Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. // // Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. func (o StackOutput) StackPolicyBody() pulumi.AnyOutput { @@ -539,7 +539,7 @@ func (o StackOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *Stack) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } -// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. +// Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. // @@ -548,7 +548,7 @@ func (o StackOutput) TemplateBody() pulumi.AnyOutput { return o.ApplyT(func(v *Stack) pulumi.AnyOutput { return v.TemplateBody }).(pulumi.AnyOutput) } -// Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . +// Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. func (o StackOutput) TemplateUrl() pulumi.StringPtrOutput { diff --git a/sdk/go/aws/cloudformation/stackSet.go b/sdk/go/aws/cloudformation/stackSet.go index 89d8560c29..b63b6a3b36 100644 --- a/sdk/go/aws/cloudformation/stackSet.go +++ b/sdk/go/aws/cloudformation/stackSet.go @@ -31,7 +31,7 @@ type StackSet struct { ExecutionRoleName pulumi.StringPtrOutput `pulumi:"executionRoleName"` // Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. ManagedExecution ManagedExecutionPropertiesPtrOutput `pulumi:"managedExecution"` - // The user-specified preferences for how AWS CloudFormation performs a stack set operation. + // The user-specified preferences for how CloudFormation performs a stack set operation. OperationPreferences StackSetOperationPreferencesPtrOutput `pulumi:"operationPreferences"` // The input parameters for the stack set template. Parameters StackSetParameterArrayOutput `pulumi:"parameters"` @@ -113,7 +113,7 @@ type stackSetArgs struct { ExecutionRoleName *string `pulumi:"executionRoleName"` // Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. ManagedExecution *ManagedExecutionProperties `pulumi:"managedExecution"` - // The user-specified preferences for how AWS CloudFormation performs a stack set operation. + // The user-specified preferences for how CloudFormation performs a stack set operation. OperationPreferences *StackSetOperationPreferences `pulumi:"operationPreferences"` // The input parameters for the stack set template. Parameters []StackSetParameter `pulumi:"parameters"` @@ -147,7 +147,7 @@ type StackSetArgs struct { ExecutionRoleName pulumi.StringPtrInput // Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. ManagedExecution ManagedExecutionPropertiesPtrInput - // The user-specified preferences for how AWS CloudFormation performs a stack set operation. + // The user-specified preferences for how CloudFormation performs a stack set operation. OperationPreferences StackSetOperationPreferencesPtrInput // The input parameters for the stack set template. Parameters StackSetParameterArrayInput @@ -237,7 +237,7 @@ func (o StackSetOutput) ManagedExecution() ManagedExecutionPropertiesPtrOutput { return o.ApplyT(func(v *StackSet) ManagedExecutionPropertiesPtrOutput { return v.ManagedExecution }).(ManagedExecutionPropertiesPtrOutput) } -// The user-specified preferences for how AWS CloudFormation performs a stack set operation. +// The user-specified preferences for how CloudFormation performs a stack set operation. func (o StackSetOutput) OperationPreferences() StackSetOperationPreferencesPtrOutput { return o.ApplyT(func(v *StackSet) StackSetOperationPreferencesPtrOutput { return v.OperationPreferences }).(StackSetOperationPreferencesPtrOutput) } diff --git a/sdk/go/aws/cloudfront/pulumiEnums.go b/sdk/go/aws/cloudfront/pulumiEnums.go index 413c3afb0c..e82d49eda8 100644 --- a/sdk/go/aws/cloudfront/pulumiEnums.go +++ b/sdk/go/aws/cloudfront/pulumiEnums.go @@ -342,6 +342,171 @@ func (in *continuousDeploymentPolicyTrafficConfigTypePtr) ToContinuousDeployment return pulumi.ToOutputWithContext(ctx, in).(ContinuousDeploymentPolicyTrafficConfigTypePtrOutput) } +type DistributionOriginGroupSelectionCriteria string + +const ( + DistributionOriginGroupSelectionCriteriaDefault = DistributionOriginGroupSelectionCriteria("default") + DistributionOriginGroupSelectionCriteriaMediaQualityBased = DistributionOriginGroupSelectionCriteria("media-quality-based") +) + +func (DistributionOriginGroupSelectionCriteria) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionOriginGroupSelectionCriteria)(nil)).Elem() +} + +func (e DistributionOriginGroupSelectionCriteria) ToDistributionOriginGroupSelectionCriteriaOutput() DistributionOriginGroupSelectionCriteriaOutput { + return pulumi.ToOutput(e).(DistributionOriginGroupSelectionCriteriaOutput) +} + +func (e DistributionOriginGroupSelectionCriteria) ToDistributionOriginGroupSelectionCriteriaOutputWithContext(ctx context.Context) DistributionOriginGroupSelectionCriteriaOutput { + return pulumi.ToOutputWithContext(ctx, e).(DistributionOriginGroupSelectionCriteriaOutput) +} + +func (e DistributionOriginGroupSelectionCriteria) ToDistributionOriginGroupSelectionCriteriaPtrOutput() DistributionOriginGroupSelectionCriteriaPtrOutput { + return e.ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(context.Background()) +} + +func (e DistributionOriginGroupSelectionCriteria) ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(ctx context.Context) DistributionOriginGroupSelectionCriteriaPtrOutput { + return DistributionOriginGroupSelectionCriteria(e).ToDistributionOriginGroupSelectionCriteriaOutputWithContext(ctx).ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(ctx) +} + +func (e DistributionOriginGroupSelectionCriteria) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DistributionOriginGroupSelectionCriteria) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DistributionOriginGroupSelectionCriteria) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DistributionOriginGroupSelectionCriteria) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DistributionOriginGroupSelectionCriteriaOutput struct{ *pulumi.OutputState } + +func (DistributionOriginGroupSelectionCriteriaOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionOriginGroupSelectionCriteria)(nil)).Elem() +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToDistributionOriginGroupSelectionCriteriaOutput() DistributionOriginGroupSelectionCriteriaOutput { + return o +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToDistributionOriginGroupSelectionCriteriaOutputWithContext(ctx context.Context) DistributionOriginGroupSelectionCriteriaOutput { + return o +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToDistributionOriginGroupSelectionCriteriaPtrOutput() DistributionOriginGroupSelectionCriteriaPtrOutput { + return o.ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(context.Background()) +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(ctx context.Context) DistributionOriginGroupSelectionCriteriaPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DistributionOriginGroupSelectionCriteria) *DistributionOriginGroupSelectionCriteria { + return &v + }).(DistributionOriginGroupSelectionCriteriaPtrOutput) +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DistributionOriginGroupSelectionCriteria) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DistributionOriginGroupSelectionCriteriaOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DistributionOriginGroupSelectionCriteria) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DistributionOriginGroupSelectionCriteriaPtrOutput struct{ *pulumi.OutputState } + +func (DistributionOriginGroupSelectionCriteriaPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DistributionOriginGroupSelectionCriteria)(nil)).Elem() +} + +func (o DistributionOriginGroupSelectionCriteriaPtrOutput) ToDistributionOriginGroupSelectionCriteriaPtrOutput() DistributionOriginGroupSelectionCriteriaPtrOutput { + return o +} + +func (o DistributionOriginGroupSelectionCriteriaPtrOutput) ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(ctx context.Context) DistributionOriginGroupSelectionCriteriaPtrOutput { + return o +} + +func (o DistributionOriginGroupSelectionCriteriaPtrOutput) Elem() DistributionOriginGroupSelectionCriteriaOutput { + return o.ApplyT(func(v *DistributionOriginGroupSelectionCriteria) DistributionOriginGroupSelectionCriteria { + if v != nil { + return *v + } + var ret DistributionOriginGroupSelectionCriteria + return ret + }).(DistributionOriginGroupSelectionCriteriaOutput) +} + +func (o DistributionOriginGroupSelectionCriteriaPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DistributionOriginGroupSelectionCriteriaPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DistributionOriginGroupSelectionCriteria) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DistributionOriginGroupSelectionCriteriaInput is an input type that accepts values of the DistributionOriginGroupSelectionCriteria enum +// A concrete instance of `DistributionOriginGroupSelectionCriteriaInput` can be one of the following: +// +// DistributionOriginGroupSelectionCriteriaDefault +// DistributionOriginGroupSelectionCriteriaMediaQualityBased +type DistributionOriginGroupSelectionCriteriaInput interface { + pulumi.Input + + ToDistributionOriginGroupSelectionCriteriaOutput() DistributionOriginGroupSelectionCriteriaOutput + ToDistributionOriginGroupSelectionCriteriaOutputWithContext(context.Context) DistributionOriginGroupSelectionCriteriaOutput +} + +var distributionOriginGroupSelectionCriteriaPtrType = reflect.TypeOf((**DistributionOriginGroupSelectionCriteria)(nil)).Elem() + +type DistributionOriginGroupSelectionCriteriaPtrInput interface { + pulumi.Input + + ToDistributionOriginGroupSelectionCriteriaPtrOutput() DistributionOriginGroupSelectionCriteriaPtrOutput + ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(context.Context) DistributionOriginGroupSelectionCriteriaPtrOutput +} + +type distributionOriginGroupSelectionCriteriaPtr string + +func DistributionOriginGroupSelectionCriteriaPtr(v string) DistributionOriginGroupSelectionCriteriaPtrInput { + return (*distributionOriginGroupSelectionCriteriaPtr)(&v) +} + +func (*distributionOriginGroupSelectionCriteriaPtr) ElementType() reflect.Type { + return distributionOriginGroupSelectionCriteriaPtrType +} + +func (in *distributionOriginGroupSelectionCriteriaPtr) ToDistributionOriginGroupSelectionCriteriaPtrOutput() DistributionOriginGroupSelectionCriteriaPtrOutput { + return pulumi.ToOutput(in).(DistributionOriginGroupSelectionCriteriaPtrOutput) +} + +func (in *distributionOriginGroupSelectionCriteriaPtr) ToDistributionOriginGroupSelectionCriteriaPtrOutputWithContext(ctx context.Context) DistributionOriginGroupSelectionCriteriaPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DistributionOriginGroupSelectionCriteriaPtrOutput) +} + // A flag that indicates whether additional CloudWatch metrics are enabled for a given CloudFront distribution. type MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatus string @@ -513,12 +678,16 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ContinuousDeploymentPolicyConfigTypePtrInput)(nil)).Elem(), ContinuousDeploymentPolicyConfigType("SingleWeight")) pulumi.RegisterInputType(reflect.TypeOf((*ContinuousDeploymentPolicyTrafficConfigTypeInput)(nil)).Elem(), ContinuousDeploymentPolicyTrafficConfigType("SingleWeight")) pulumi.RegisterInputType(reflect.TypeOf((*ContinuousDeploymentPolicyTrafficConfigTypePtrInput)(nil)).Elem(), ContinuousDeploymentPolicyTrafficConfigType("SingleWeight")) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionOriginGroupSelectionCriteriaInput)(nil)).Elem(), DistributionOriginGroupSelectionCriteria("default")) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionOriginGroupSelectionCriteriaPtrInput)(nil)).Elem(), DistributionOriginGroupSelectionCriteria("default")) pulumi.RegisterInputType(reflect.TypeOf((*MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatusInput)(nil)).Elem(), MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatus("Enabled")) pulumi.RegisterInputType(reflect.TypeOf((*MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatusPtrInput)(nil)).Elem(), MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatus("Enabled")) pulumi.RegisterOutputType(ContinuousDeploymentPolicyConfigTypeOutput{}) pulumi.RegisterOutputType(ContinuousDeploymentPolicyConfigTypePtrOutput{}) pulumi.RegisterOutputType(ContinuousDeploymentPolicyTrafficConfigTypeOutput{}) pulumi.RegisterOutputType(ContinuousDeploymentPolicyTrafficConfigTypePtrOutput{}) + pulumi.RegisterOutputType(DistributionOriginGroupSelectionCriteriaOutput{}) + pulumi.RegisterOutputType(DistributionOriginGroupSelectionCriteriaPtrOutput{}) pulumi.RegisterOutputType(MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatusOutput{}) pulumi.RegisterOutputType(MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatusPtrOutput{}) } diff --git a/sdk/go/aws/cloudfront/pulumiTypes.go b/sdk/go/aws/cloudfront/pulumiTypes.go index 9b8abd97c3..4a375fa1cf 100644 --- a/sdk/go/aws/cloudfront/pulumiTypes.go +++ b/sdk/go/aws/cloudfront/pulumiTypes.go @@ -2124,6 +2124,8 @@ type DistributionCacheBehavior struct { ForwardedValues *DistributionForwardedValues `pulumi:"forwardedValues"` // A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior. FunctionAssociations []DistributionFunctionAssociation `pulumi:"functionAssociations"` + // The gRPC configuration for your cache behavior. + GrpcConfig *DistributionGrpcConfig `pulumi:"grpcConfig"` // A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. LambdaFunctionAssociations []DistributionLambdaFunctionAssociation `pulumi:"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*. @@ -2216,6 +2218,8 @@ type DistributionCacheBehaviorArgs struct { ForwardedValues DistributionForwardedValuesPtrInput `pulumi:"forwardedValues"` // A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior. FunctionAssociations DistributionFunctionAssociationArrayInput `pulumi:"functionAssociations"` + // The gRPC configuration for your cache behavior. + GrpcConfig DistributionGrpcConfigPtrInput `pulumi:"grpcConfig"` // A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. LambdaFunctionAssociations DistributionLambdaFunctionAssociationArrayInput `pulumi:"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*. @@ -2379,6 +2383,11 @@ func (o DistributionCacheBehaviorOutput) FunctionAssociations() DistributionFunc return o.ApplyT(func(v DistributionCacheBehavior) []DistributionFunctionAssociation { return v.FunctionAssociations }).(DistributionFunctionAssociationArrayOutput) } +// The gRPC configuration for your cache behavior. +func (o DistributionCacheBehaviorOutput) GrpcConfig() DistributionGrpcConfigPtrOutput { + return o.ApplyT(func(v DistributionCacheBehavior) *DistributionGrpcConfig { return v.GrpcConfig }).(DistributionGrpcConfigPtrOutput) +} + // A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. func (o DistributionCacheBehaviorOutput) LambdaFunctionAssociations() DistributionLambdaFunctionAssociationArrayOutput { return o.ApplyT(func(v DistributionCacheBehavior) []DistributionLambdaFunctionAssociation { @@ -3780,6 +3789,8 @@ type DistributionDefaultCacheBehavior struct { ForwardedValues *DistributionForwardedValues `pulumi:"forwardedValues"` // A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior. FunctionAssociations []DistributionFunctionAssociation `pulumi:"functionAssociations"` + // The gRPC configuration for your cache behavior. + GrpcConfig *DistributionGrpcConfig `pulumi:"grpcConfig"` // A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. LambdaFunctionAssociations []DistributionLambdaFunctionAssociation `pulumi:"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*. @@ -3860,6 +3871,8 @@ type DistributionDefaultCacheBehaviorArgs struct { ForwardedValues DistributionForwardedValuesPtrInput `pulumi:"forwardedValues"` // A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior. FunctionAssociations DistributionFunctionAssociationArrayInput `pulumi:"functionAssociations"` + // The gRPC configuration for your cache behavior. + GrpcConfig DistributionGrpcConfigPtrInput `pulumi:"grpcConfig"` // A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. LambdaFunctionAssociations DistributionLambdaFunctionAssociationArrayInput `pulumi:"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*. @@ -3988,6 +4001,11 @@ func (o DistributionDefaultCacheBehaviorOutput) FunctionAssociations() Distribut }).(DistributionFunctionAssociationArrayOutput) } +// The gRPC configuration for your cache behavior. +func (o DistributionDefaultCacheBehaviorOutput) GrpcConfig() DistributionGrpcConfigPtrOutput { + return o.ApplyT(func(v DistributionDefaultCacheBehavior) *DistributionGrpcConfig { return v.GrpcConfig }).(DistributionGrpcConfigPtrOutput) +} + // A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. func (o DistributionDefaultCacheBehaviorOutput) LambdaFunctionAssociations() DistributionLambdaFunctionAssociationArrayOutput { return o.ApplyT(func(v DistributionDefaultCacheBehavior) []DistributionLambdaFunctionAssociation { @@ -4191,6 +4209,16 @@ func (o DistributionDefaultCacheBehaviorPtrOutput) FunctionAssociations() Distri }).(DistributionFunctionAssociationArrayOutput) } +// The gRPC configuration for your cache behavior. +func (o DistributionDefaultCacheBehaviorPtrOutput) GrpcConfig() DistributionGrpcConfigPtrOutput { + return o.ApplyT(func(v *DistributionDefaultCacheBehavior) *DistributionGrpcConfig { + if v == nil { + return nil + } + return v.GrpcConfig + }).(DistributionGrpcConfigPtrOutput) +} + // A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. func (o DistributionDefaultCacheBehaviorPtrOutput) LambdaFunctionAssociations() DistributionLambdaFunctionAssociationArrayOutput { return o.ApplyT(func(v *DistributionDefaultCacheBehavior) []DistributionLambdaFunctionAssociation { @@ -4895,6 +4923,143 @@ func (o DistributionGeoRestrictionPtrOutput) RestrictionType() pulumi.StringPtrO }).(pulumi.StringPtrOutput) } +type DistributionGrpcConfig struct { + // Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + Enabled bool `pulumi:"enabled"` +} + +// DistributionGrpcConfigInput is an input type that accepts DistributionGrpcConfigArgs and DistributionGrpcConfigOutput values. +// You can construct a concrete instance of `DistributionGrpcConfigInput` via: +// +// DistributionGrpcConfigArgs{...} +type DistributionGrpcConfigInput interface { + pulumi.Input + + ToDistributionGrpcConfigOutput() DistributionGrpcConfigOutput + ToDistributionGrpcConfigOutputWithContext(context.Context) DistributionGrpcConfigOutput +} + +type DistributionGrpcConfigArgs struct { + // Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + Enabled pulumi.BoolInput `pulumi:"enabled"` +} + +func (DistributionGrpcConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionGrpcConfig)(nil)).Elem() +} + +func (i DistributionGrpcConfigArgs) ToDistributionGrpcConfigOutput() DistributionGrpcConfigOutput { + return i.ToDistributionGrpcConfigOutputWithContext(context.Background()) +} + +func (i DistributionGrpcConfigArgs) ToDistributionGrpcConfigOutputWithContext(ctx context.Context) DistributionGrpcConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionGrpcConfigOutput) +} + +func (i DistributionGrpcConfigArgs) ToDistributionGrpcConfigPtrOutput() DistributionGrpcConfigPtrOutput { + return i.ToDistributionGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (i DistributionGrpcConfigArgs) ToDistributionGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionGrpcConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionGrpcConfigOutput).ToDistributionGrpcConfigPtrOutputWithContext(ctx) +} + +// DistributionGrpcConfigPtrInput is an input type that accepts DistributionGrpcConfigArgs, DistributionGrpcConfigPtr and DistributionGrpcConfigPtrOutput values. +// You can construct a concrete instance of `DistributionGrpcConfigPtrInput` via: +// +// DistributionGrpcConfigArgs{...} +// +// or: +// +// nil +type DistributionGrpcConfigPtrInput interface { + pulumi.Input + + ToDistributionGrpcConfigPtrOutput() DistributionGrpcConfigPtrOutput + ToDistributionGrpcConfigPtrOutputWithContext(context.Context) DistributionGrpcConfigPtrOutput +} + +type distributionGrpcConfigPtrType DistributionGrpcConfigArgs + +func DistributionGrpcConfigPtr(v *DistributionGrpcConfigArgs) DistributionGrpcConfigPtrInput { + return (*distributionGrpcConfigPtrType)(v) +} + +func (*distributionGrpcConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DistributionGrpcConfig)(nil)).Elem() +} + +func (i *distributionGrpcConfigPtrType) ToDistributionGrpcConfigPtrOutput() DistributionGrpcConfigPtrOutput { + return i.ToDistributionGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (i *distributionGrpcConfigPtrType) ToDistributionGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionGrpcConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionGrpcConfigPtrOutput) +} + +type DistributionGrpcConfigOutput struct{ *pulumi.OutputState } + +func (DistributionGrpcConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionGrpcConfig)(nil)).Elem() +} + +func (o DistributionGrpcConfigOutput) ToDistributionGrpcConfigOutput() DistributionGrpcConfigOutput { + return o +} + +func (o DistributionGrpcConfigOutput) ToDistributionGrpcConfigOutputWithContext(ctx context.Context) DistributionGrpcConfigOutput { + return o +} + +func (o DistributionGrpcConfigOutput) ToDistributionGrpcConfigPtrOutput() DistributionGrpcConfigPtrOutput { + return o.ToDistributionGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (o DistributionGrpcConfigOutput) ToDistributionGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionGrpcConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DistributionGrpcConfig) *DistributionGrpcConfig { + return &v + }).(DistributionGrpcConfigPtrOutput) +} + +// Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. +func (o DistributionGrpcConfigOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v DistributionGrpcConfig) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +type DistributionGrpcConfigPtrOutput struct{ *pulumi.OutputState } + +func (DistributionGrpcConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DistributionGrpcConfig)(nil)).Elem() +} + +func (o DistributionGrpcConfigPtrOutput) ToDistributionGrpcConfigPtrOutput() DistributionGrpcConfigPtrOutput { + return o +} + +func (o DistributionGrpcConfigPtrOutput) ToDistributionGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionGrpcConfigPtrOutput { + return o +} + +func (o DistributionGrpcConfigPtrOutput) Elem() DistributionGrpcConfigOutput { + return o.ApplyT(func(v *DistributionGrpcConfig) DistributionGrpcConfig { + if v != nil { + return *v + } + var ret DistributionGrpcConfig + return ret + }).(DistributionGrpcConfigOutput) +} + +// Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. +func (o DistributionGrpcConfigPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DistributionGrpcConfig) *bool { + if v == nil { + return nil + } + return &v.Enabled + }).(pulumi.BoolPtrOutput) +} + // A complex type that contains a Lambda@Edge function association. type DistributionLambdaFunctionAssociation struct { // Specifies the event type that triggers a Lambda@Edge function invocation. You can specify the following values: @@ -5430,7 +5595,7 @@ func (o DistributionLegacyS3OriginPtrOutput) OriginAccessIdentity() pulumi.Strin // A complex type that controls whether access logs are written for the distribution. type DistributionLogging struct { // The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. - Bucket string `pulumi:"bucket"` + Bucket *string `pulumi:"bucket"` // Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. IncludeCookies *bool `pulumi:"includeCookies"` // An optional string that you want CloudFront to prefix to the access log ``filenames`` for this distribution, for example, ``myprefix/``. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty ``Prefix`` element in the ``Logging`` element. @@ -5451,7 +5616,7 @@ type DistributionLoggingInput interface { // A complex type that controls whether access logs are written for the distribution. type DistributionLoggingArgs struct { // The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. - Bucket pulumi.StringInput `pulumi:"bucket"` + Bucket pulumi.StringPtrInput `pulumi:"bucket"` // Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. IncludeCookies pulumi.BoolPtrInput `pulumi:"includeCookies"` // An optional string that you want CloudFront to prefix to the access log ``filenames`` for this distribution, for example, ``myprefix/``. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty ``Prefix`` element in the ``Logging`` element. @@ -5537,8 +5702,8 @@ func (o DistributionLoggingOutput) ToDistributionLoggingPtrOutputWithContext(ctx } // The Amazon S3 bucket to store the access logs in, for example, “myawslogbucket.s3.amazonaws.com“. -func (o DistributionLoggingOutput) Bucket() pulumi.StringOutput { - return o.ApplyT(func(v DistributionLogging) string { return v.Bucket }).(pulumi.StringOutput) +func (o DistributionLoggingOutput) Bucket() pulumi.StringPtrOutput { + return o.ApplyT(func(v DistributionLogging) *string { return v.Bucket }).(pulumi.StringPtrOutput) } // Specifies whether you want CloudFront to include cookies in access logs, specify “true“ for “IncludeCookies“. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify “false“ for “IncludeCookies“. @@ -5581,7 +5746,7 @@ func (o DistributionLoggingPtrOutput) Bucket() pulumi.StringPtrOutput { if v == nil { return nil } - return &v.Bucket + return v.Bucket }).(pulumi.StringPtrOutput) } @@ -5971,6 +6136,8 @@ type DistributionOriginGroup struct { Id string `pulumi:"id"` // A complex type that contains information about the origins in an origin group. Members DistributionOriginGroupMembers `pulumi:"members"` + // The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + SelectionCriteria *DistributionOriginGroupSelectionCriteria `pulumi:"selectionCriteria"` } // DistributionOriginGroupInput is an input type that accepts DistributionOriginGroupArgs and DistributionOriginGroupOutput values. @@ -5992,6 +6159,8 @@ type DistributionOriginGroupArgs struct { Id pulumi.StringInput `pulumi:"id"` // A complex type that contains information about the origins in an origin group. Members DistributionOriginGroupMembersInput `pulumi:"members"` + // The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + SelectionCriteria DistributionOriginGroupSelectionCriteriaPtrInput `pulumi:"selectionCriteria"` } func (DistributionOriginGroupArgs) ElementType() reflect.Type { @@ -6061,6 +6230,11 @@ func (o DistributionOriginGroupOutput) Members() DistributionOriginGroupMembersO return o.ApplyT(func(v DistributionOriginGroup) DistributionOriginGroupMembers { return v.Members }).(DistributionOriginGroupMembersOutput) } +// The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . +func (o DistributionOriginGroupOutput) SelectionCriteria() DistributionOriginGroupSelectionCriteriaPtrOutput { + return o.ApplyT(func(v DistributionOriginGroup) *DistributionOriginGroupSelectionCriteria { return v.SelectionCriteria }).(DistributionOriginGroupSelectionCriteriaPtrOutput) +} + type DistributionOriginGroupArrayOutput struct{ *pulumi.OutputState } func (DistributionOriginGroupArrayOutput) ElementType() reflect.Type { @@ -12583,6 +12757,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DistributionFunctionAssociationArrayInput)(nil)).Elem(), DistributionFunctionAssociationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionGeoRestrictionInput)(nil)).Elem(), DistributionGeoRestrictionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionGeoRestrictionPtrInput)(nil)).Elem(), DistributionGeoRestrictionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionGrpcConfigInput)(nil)).Elem(), DistributionGrpcConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionGrpcConfigPtrInput)(nil)).Elem(), DistributionGrpcConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionLambdaFunctionAssociationInput)(nil)).Elem(), DistributionLambdaFunctionAssociationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionLambdaFunctionAssociationArrayInput)(nil)).Elem(), DistributionLambdaFunctionAssociationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionLegacyCustomOriginInput)(nil)).Elem(), DistributionLegacyCustomOriginArgs{}) @@ -12711,6 +12887,8 @@ func init() { pulumi.RegisterOutputType(DistributionFunctionAssociationArrayOutput{}) pulumi.RegisterOutputType(DistributionGeoRestrictionOutput{}) pulumi.RegisterOutputType(DistributionGeoRestrictionPtrOutput{}) + pulumi.RegisterOutputType(DistributionGrpcConfigOutput{}) + pulumi.RegisterOutputType(DistributionGrpcConfigPtrOutput{}) pulumi.RegisterOutputType(DistributionLambdaFunctionAssociationOutput{}) pulumi.RegisterOutputType(DistributionLambdaFunctionAssociationArrayOutput{}) pulumi.RegisterOutputType(DistributionLegacyCustomOriginOutput{}) diff --git a/sdk/go/aws/connect/getQueue.go b/sdk/go/aws/connect/getQueue.go index 33483ce0bb..73c5f9791b 100644 --- a/sdk/go/aws/connect/getQueue.go +++ b/sdk/go/aws/connect/getQueue.go @@ -41,6 +41,8 @@ type LookupQueueResult struct { Name *string `pulumi:"name"` // The outbound caller ID name, number, and outbound whisper flow. OutboundCallerConfig *QueueOutboundCallerConfig `pulumi:"outboundCallerConfig"` + // The outbound email address ID. + OutboundEmailConfig *QueueOutboundEmailConfig `pulumi:"outboundEmailConfig"` // The Amazon Resource Name (ARN) for the queue. QueueArn *string `pulumi:"queueArn"` // The quick connects available to agents who are working the queue. @@ -115,6 +117,11 @@ func (o LookupQueueResultOutput) OutboundCallerConfig() QueueOutboundCallerConfi return o.ApplyT(func(v LookupQueueResult) *QueueOutboundCallerConfig { return v.OutboundCallerConfig }).(QueueOutboundCallerConfigPtrOutput) } +// The outbound email address ID. +func (o LookupQueueResultOutput) OutboundEmailConfig() QueueOutboundEmailConfigPtrOutput { + return o.ApplyT(func(v LookupQueueResult) *QueueOutboundEmailConfig { return v.OutboundEmailConfig }).(QueueOutboundEmailConfigPtrOutput) +} + // The Amazon Resource Name (ARN) for the queue. func (o LookupQueueResultOutput) QueueArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupQueueResult) *string { return v.QueueArn }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/connect/getRule.go b/sdk/go/aws/connect/getRule.go index 8ca27900ac..b656581c00 100644 --- a/sdk/go/aws/connect/getRule.go +++ b/sdk/go/aws/connect/getRule.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Resource Type definition for AWS:Connect::Rule +// Creates a rule for the specified CON instance. func LookupRule(ctx *pulumi.Context, args *LookupRuleArgs, opts ...pulumi.InvokeOption) (*LookupRuleResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupRuleResult @@ -29,17 +29,18 @@ type LookupRuleArgs struct { } type LookupRuleResult struct { - // The list of actions that will be executed when a rule is triggered. + // A list of actions to be run when the rule is triggered. Actions *RuleActions `pulumi:"actions"` - // The conditions of a rule. + // The conditions of the rule. Function *string `pulumi:"function"` // The name of the rule. Name *string `pulumi:"name"` - // The publish status of a rule, either draft or published. + // The publish status of the rule. + // *Allowed values*: ``DRAFT`` | ``PUBLISHED`` PublishStatus *RulePublishStatus `pulumi:"publishStatus"` // The Amazon Resource Name (ARN) of the rule. RuleArn *string `pulumi:"ruleArn"` - // One or more tags. + // The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags []aws.Tag `pulumi:"tags"` } @@ -75,12 +76,12 @@ func (o LookupRuleResultOutput) ToLookupRuleResultOutputWithContext(ctx context. return o } -// The list of actions that will be executed when a rule is triggered. +// A list of actions to be run when the rule is triggered. func (o LookupRuleResultOutput) Actions() RuleActionsPtrOutput { return o.ApplyT(func(v LookupRuleResult) *RuleActions { return v.Actions }).(RuleActionsPtrOutput) } -// The conditions of a rule. +// The conditions of the rule. func (o LookupRuleResultOutput) Function() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRuleResult) *string { return v.Function }).(pulumi.StringPtrOutput) } @@ -90,7 +91,9 @@ func (o LookupRuleResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRuleResult) *string { return v.Name }).(pulumi.StringPtrOutput) } -// The publish status of a rule, either draft or published. +// The publish status of the rule. +// +// *Allowed values*: ``DRAFT`` | ``PUBLISHED`` func (o LookupRuleResultOutput) PublishStatus() RulePublishStatusPtrOutput { return o.ApplyT(func(v LookupRuleResult) *RulePublishStatus { return v.PublishStatus }).(RulePublishStatusPtrOutput) } @@ -100,7 +103,7 @@ func (o LookupRuleResultOutput) RuleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRuleResult) *string { return v.RuleArn }).(pulumi.StringPtrOutput) } -// One or more tags. +// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. func (o LookupRuleResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupRuleResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/connect/pulumiEnums.go b/sdk/go/aws/connect/pulumiEnums.go index 404ca4bc18..1c00eaf47a 100644 --- a/sdk/go/aws/connect/pulumiEnums.go +++ b/sdk/go/aws/connect/pulumiEnums.go @@ -4094,7 +4094,9 @@ func (in *routingProfileChannelPtr) ToRoutingProfileChannelPtrOutputWithContext( return pulumi.ToOutputWithContext(ctx, in).(RoutingProfileChannelPtrOutput) } -// The publish status of a rule, either draft or published. +// The publish status of the rule. +// +// *Allowed values*: ``DRAFT`` | ``PUBLISHED`` type RulePublishStatus string const ( @@ -4260,6 +4262,9 @@ func (in *rulePublishStatusPtr) ToRulePublishStatusPtrOutputWithContext(ctx cont return pulumi.ToOutputWithContext(ctx, in).(RulePublishStatusPtrOutput) } +// The type of the reference. “DATE“ must be of type Epoch timestamp. +// +// *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` type RuleReferenceType string const ( @@ -4433,7 +4438,9 @@ func (in *ruleReferenceTypePtr) ToRuleReferenceTypePtrOutputWithContext(ctx cont return pulumi.ToOutputWithContext(ctx, in).(RuleReferenceTypePtrOutput) } -// The type of content. +// Content type format. +// +// *Allowed value*: ``PLAIN_TEXT`` type RuleSendNotificationActionContentType string const ( @@ -4597,7 +4604,9 @@ func (in *ruleSendNotificationActionContentTypePtr) ToRuleSendNotificationAction return pulumi.ToOutputWithContext(ctx, in).(RuleSendNotificationActionContentTypePtrOutput) } -// The means of delivery. +// Notification delivery method. +// +// *Allowed value*: ``EMAIL`` type RuleSendNotificationActionDeliveryMethod string const ( @@ -4761,7 +4770,7 @@ func (in *ruleSendNotificationActionDeliveryMethodPtr) ToRuleSendNotificationAct return pulumi.ToOutputWithContext(ctx, in).(RuleSendNotificationActionDeliveryMethodPtrOutput) } -// The name of event source. +// The name of the event source. type RuleTriggerEventSourceEventSourceName string const ( diff --git a/sdk/go/aws/connect/pulumiTypes.go b/sdk/go/aws/connect/pulumiTypes.go index ce7e1bf88d..5c20ced3cc 100644 --- a/sdk/go/aws/connect/pulumiTypes.go +++ b/sdk/go/aws/connect/pulumiTypes.go @@ -2765,8 +2765,11 @@ func (o HoursOfOperationConfigArrayOutput) Index(i pulumi.IntInput) HoursOfOpera // Overrides attached to the hours of operation. type HoursOfOperationOverride struct { - EffectiveFrom string `pulumi:"effectiveFrom"` - EffectiveTill string `pulumi:"effectiveTill"` + // The date from which the hours of operation override would be effective. + EffectiveFrom string `pulumi:"effectiveFrom"` + // The date till which the hours of operation override would be effective. + EffectiveTill string `pulumi:"effectiveTill"` + // The identifier for the hours of operation override. HoursOfOperationOverrideId *string `pulumi:"hoursOfOperationOverrideId"` OverrideConfig []HoursOfOperationOverrideConfig `pulumi:"overrideConfig"` OverrideDescription *string `pulumi:"overrideDescription"` @@ -2786,8 +2789,11 @@ type HoursOfOperationOverrideInput interface { // Overrides attached to the hours of operation. type HoursOfOperationOverrideArgs struct { - EffectiveFrom pulumi.StringInput `pulumi:"effectiveFrom"` - EffectiveTill pulumi.StringInput `pulumi:"effectiveTill"` + // The date from which the hours of operation override would be effective. + EffectiveFrom pulumi.StringInput `pulumi:"effectiveFrom"` + // The date till which the hours of operation override would be effective. + EffectiveTill pulumi.StringInput `pulumi:"effectiveTill"` + // The identifier for the hours of operation override. HoursOfOperationOverrideId pulumi.StringPtrInput `pulumi:"hoursOfOperationOverrideId"` OverrideConfig HoursOfOperationOverrideConfigArrayInput `pulumi:"overrideConfig"` OverrideDescription pulumi.StringPtrInput `pulumi:"overrideDescription"` @@ -2846,14 +2852,17 @@ func (o HoursOfOperationOverrideOutput) ToHoursOfOperationOverrideOutputWithCont return o } +// The date from which the hours of operation override would be effective. func (o HoursOfOperationOverrideOutput) EffectiveFrom() pulumi.StringOutput { return o.ApplyT(func(v HoursOfOperationOverride) string { return v.EffectiveFrom }).(pulumi.StringOutput) } +// The date till which the hours of operation override would be effective. func (o HoursOfOperationOverrideOutput) EffectiveTill() pulumi.StringOutput { return o.ApplyT(func(v HoursOfOperationOverride) string { return v.EffectiveTill }).(pulumi.StringOutput) } +// The identifier for the hours of operation override. func (o HoursOfOperationOverrideOutput) HoursOfOperationOverrideId() pulumi.StringPtrOutput { return o.ApplyT(func(v HoursOfOperationOverride) *string { return v.HoursOfOperationOverrideId }).(pulumi.StringPtrOutput) } @@ -4336,6 +4345,146 @@ func (o QueueOutboundCallerConfigPtrOutput) OutboundFlowArn() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } +// The outbound email address ID. +type QueueOutboundEmailConfig struct { + // The identifier of the email address. + OutboundEmailAddressId *string `pulumi:"outboundEmailAddressId"` +} + +// QueueOutboundEmailConfigInput is an input type that accepts QueueOutboundEmailConfigArgs and QueueOutboundEmailConfigOutput values. +// You can construct a concrete instance of `QueueOutboundEmailConfigInput` via: +// +// QueueOutboundEmailConfigArgs{...} +type QueueOutboundEmailConfigInput interface { + pulumi.Input + + ToQueueOutboundEmailConfigOutput() QueueOutboundEmailConfigOutput + ToQueueOutboundEmailConfigOutputWithContext(context.Context) QueueOutboundEmailConfigOutput +} + +// The outbound email address ID. +type QueueOutboundEmailConfigArgs struct { + // The identifier of the email address. + OutboundEmailAddressId pulumi.StringPtrInput `pulumi:"outboundEmailAddressId"` +} + +func (QueueOutboundEmailConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*QueueOutboundEmailConfig)(nil)).Elem() +} + +func (i QueueOutboundEmailConfigArgs) ToQueueOutboundEmailConfigOutput() QueueOutboundEmailConfigOutput { + return i.ToQueueOutboundEmailConfigOutputWithContext(context.Background()) +} + +func (i QueueOutboundEmailConfigArgs) ToQueueOutboundEmailConfigOutputWithContext(ctx context.Context) QueueOutboundEmailConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(QueueOutboundEmailConfigOutput) +} + +func (i QueueOutboundEmailConfigArgs) ToQueueOutboundEmailConfigPtrOutput() QueueOutboundEmailConfigPtrOutput { + return i.ToQueueOutboundEmailConfigPtrOutputWithContext(context.Background()) +} + +func (i QueueOutboundEmailConfigArgs) ToQueueOutboundEmailConfigPtrOutputWithContext(ctx context.Context) QueueOutboundEmailConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(QueueOutboundEmailConfigOutput).ToQueueOutboundEmailConfigPtrOutputWithContext(ctx) +} + +// QueueOutboundEmailConfigPtrInput is an input type that accepts QueueOutboundEmailConfigArgs, QueueOutboundEmailConfigPtr and QueueOutboundEmailConfigPtrOutput values. +// You can construct a concrete instance of `QueueOutboundEmailConfigPtrInput` via: +// +// QueueOutboundEmailConfigArgs{...} +// +// or: +// +// nil +type QueueOutboundEmailConfigPtrInput interface { + pulumi.Input + + ToQueueOutboundEmailConfigPtrOutput() QueueOutboundEmailConfigPtrOutput + ToQueueOutboundEmailConfigPtrOutputWithContext(context.Context) QueueOutboundEmailConfigPtrOutput +} + +type queueOutboundEmailConfigPtrType QueueOutboundEmailConfigArgs + +func QueueOutboundEmailConfigPtr(v *QueueOutboundEmailConfigArgs) QueueOutboundEmailConfigPtrInput { + return (*queueOutboundEmailConfigPtrType)(v) +} + +func (*queueOutboundEmailConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**QueueOutboundEmailConfig)(nil)).Elem() +} + +func (i *queueOutboundEmailConfigPtrType) ToQueueOutboundEmailConfigPtrOutput() QueueOutboundEmailConfigPtrOutput { + return i.ToQueueOutboundEmailConfigPtrOutputWithContext(context.Background()) +} + +func (i *queueOutboundEmailConfigPtrType) ToQueueOutboundEmailConfigPtrOutputWithContext(ctx context.Context) QueueOutboundEmailConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(QueueOutboundEmailConfigPtrOutput) +} + +// The outbound email address ID. +type QueueOutboundEmailConfigOutput struct{ *pulumi.OutputState } + +func (QueueOutboundEmailConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*QueueOutboundEmailConfig)(nil)).Elem() +} + +func (o QueueOutboundEmailConfigOutput) ToQueueOutboundEmailConfigOutput() QueueOutboundEmailConfigOutput { + return o +} + +func (o QueueOutboundEmailConfigOutput) ToQueueOutboundEmailConfigOutputWithContext(ctx context.Context) QueueOutboundEmailConfigOutput { + return o +} + +func (o QueueOutboundEmailConfigOutput) ToQueueOutboundEmailConfigPtrOutput() QueueOutboundEmailConfigPtrOutput { + return o.ToQueueOutboundEmailConfigPtrOutputWithContext(context.Background()) +} + +func (o QueueOutboundEmailConfigOutput) ToQueueOutboundEmailConfigPtrOutputWithContext(ctx context.Context) QueueOutboundEmailConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v QueueOutboundEmailConfig) *QueueOutboundEmailConfig { + return &v + }).(QueueOutboundEmailConfigPtrOutput) +} + +// The identifier of the email address. +func (o QueueOutboundEmailConfigOutput) OutboundEmailAddressId() pulumi.StringPtrOutput { + return o.ApplyT(func(v QueueOutboundEmailConfig) *string { return v.OutboundEmailAddressId }).(pulumi.StringPtrOutput) +} + +type QueueOutboundEmailConfigPtrOutput struct{ *pulumi.OutputState } + +func (QueueOutboundEmailConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**QueueOutboundEmailConfig)(nil)).Elem() +} + +func (o QueueOutboundEmailConfigPtrOutput) ToQueueOutboundEmailConfigPtrOutput() QueueOutboundEmailConfigPtrOutput { + return o +} + +func (o QueueOutboundEmailConfigPtrOutput) ToQueueOutboundEmailConfigPtrOutputWithContext(ctx context.Context) QueueOutboundEmailConfigPtrOutput { + return o +} + +func (o QueueOutboundEmailConfigPtrOutput) Elem() QueueOutboundEmailConfigOutput { + return o.ApplyT(func(v *QueueOutboundEmailConfig) QueueOutboundEmailConfig { + if v != nil { + return *v + } + var ret QueueOutboundEmailConfig + return ret + }).(QueueOutboundEmailConfigOutput) +} + +// The identifier of the email address. +func (o QueueOutboundEmailConfigPtrOutput) OutboundEmailAddressId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *QueueOutboundEmailConfig) *string { + if v == nil { + return nil + } + return v.OutboundEmailAddressId + }).(pulumi.StringPtrOutput) +} + // A key-value pair to associate with a resource. type QueueTag struct { // 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 - @@ -5424,18 +5573,18 @@ type RoutingProfileTag struct { Value string `pulumi:"value"` } -// The list of actions that will be executed when a rule is triggered. +// A list of actions to be run when the rule is triggered. type RuleActions struct { - // Information about the contact category action. The syntax can be empty, for example, `{}` . + // Information about the contact category action. The syntax can be empty, for example, ``{}``. AssignContactCategoryActions []RuleAssignContactCategoryAction `pulumi:"assignContactCategoryActions"` CreateCaseActions []RuleCreateCaseAction `pulumi:"createCaseActions"` EndAssociatedTasksActions []RuleEndAssociatedTasksAction `pulumi:"endAssociatedTasksActions"` - // Information about the EventBridge action. + // Information about the EV action. EventBridgeActions []RuleEventBridgeAction `pulumi:"eventBridgeActions"` // Information about the send notification action. SendNotificationActions []RuleSendNotificationAction `pulumi:"sendNotificationActions"` SubmitAutoEvaluationActions []RuleSubmitAutoEvaluationAction `pulumi:"submitAutoEvaluationActions"` - // Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + // Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` TaskActions []RuleTaskAction `pulumi:"taskActions"` UpdateCaseActions []RuleUpdateCaseAction `pulumi:"updateCaseActions"` } @@ -5451,18 +5600,18 @@ type RuleActionsInput interface { ToRuleActionsOutputWithContext(context.Context) RuleActionsOutput } -// The list of actions that will be executed when a rule is triggered. +// A list of actions to be run when the rule is triggered. type RuleActionsArgs struct { - // Information about the contact category action. The syntax can be empty, for example, `{}` . + // Information about the contact category action. The syntax can be empty, for example, ``{}``. AssignContactCategoryActions RuleAssignContactCategoryActionArrayInput `pulumi:"assignContactCategoryActions"` CreateCaseActions RuleCreateCaseActionArrayInput `pulumi:"createCaseActions"` EndAssociatedTasksActions RuleEndAssociatedTasksActionArrayInput `pulumi:"endAssociatedTasksActions"` - // Information about the EventBridge action. + // Information about the EV action. EventBridgeActions RuleEventBridgeActionArrayInput `pulumi:"eventBridgeActions"` // Information about the send notification action. SendNotificationActions RuleSendNotificationActionArrayInput `pulumi:"sendNotificationActions"` SubmitAutoEvaluationActions RuleSubmitAutoEvaluationActionArrayInput `pulumi:"submitAutoEvaluationActions"` - // Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + // Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` TaskActions RuleTaskActionArrayInput `pulumi:"taskActions"` UpdateCaseActions RuleUpdateCaseActionArrayInput `pulumi:"updateCaseActions"` } @@ -5479,7 +5628,7 @@ func (i RuleActionsArgs) ToRuleActionsOutputWithContext(ctx context.Context) Rul return pulumi.ToOutputWithContext(ctx, i).(RuleActionsOutput) } -// The list of actions that will be executed when a rule is triggered. +// A list of actions to be run when the rule is triggered. type RuleActionsOutput struct{ *pulumi.OutputState } func (RuleActionsOutput) ElementType() reflect.Type { @@ -5494,7 +5643,7 @@ func (o RuleActionsOutput) ToRuleActionsOutputWithContext(ctx context.Context) R return o } -// Information about the contact category action. The syntax can be empty, for example, `{}` . +// Information about the contact category action. The syntax can be empty, for example, “{}“. func (o RuleActionsOutput) AssignContactCategoryActions() RuleAssignContactCategoryActionArrayOutput { return o.ApplyT(func(v RuleActions) []RuleAssignContactCategoryAction { return v.AssignContactCategoryActions }).(RuleAssignContactCategoryActionArrayOutput) } @@ -5507,7 +5656,7 @@ func (o RuleActionsOutput) EndAssociatedTasksActions() RuleEndAssociatedTasksAct return o.ApplyT(func(v RuleActions) []RuleEndAssociatedTasksAction { return v.EndAssociatedTasksActions }).(RuleEndAssociatedTasksActionArrayOutput) } -// Information about the EventBridge action. +// Information about the EV action. func (o RuleActionsOutput) EventBridgeActions() RuleEventBridgeActionArrayOutput { return o.ApplyT(func(v RuleActions) []RuleEventBridgeAction { return v.EventBridgeActions }).(RuleEventBridgeActionArrayOutput) } @@ -5521,7 +5670,7 @@ func (o RuleActionsOutput) SubmitAutoEvaluationActions() RuleSubmitAutoEvaluatio return o.ApplyT(func(v RuleActions) []RuleSubmitAutoEvaluationAction { return v.SubmitAutoEvaluationActions }).(RuleSubmitAutoEvaluationActionArrayOutput) } -// Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` +// Information about the task action. This field is required if “TriggerEventSource“ is one of the following values: “OnZendeskTicketCreate“ | “OnZendeskTicketStatusUpdate“ | “OnSalesforceCaseCreate“ func (o RuleActionsOutput) TaskActions() RuleTaskActionArrayOutput { return o.ApplyT(func(v RuleActions) []RuleTaskAction { return v.TaskActions }).(RuleTaskActionArrayOutput) } @@ -5554,7 +5703,7 @@ func (o RuleActionsPtrOutput) Elem() RuleActionsOutput { }).(RuleActionsOutput) } -// Information about the contact category action. The syntax can be empty, for example, `{}` . +// Information about the contact category action. The syntax can be empty, for example, “{}“. func (o RuleActionsPtrOutput) AssignContactCategoryActions() RuleAssignContactCategoryActionArrayOutput { return o.ApplyT(func(v *RuleActions) []RuleAssignContactCategoryAction { if v == nil { @@ -5582,7 +5731,7 @@ func (o RuleActionsPtrOutput) EndAssociatedTasksActions() RuleEndAssociatedTasks }).(RuleEndAssociatedTasksActionArrayOutput) } -// Information about the EventBridge action. +// Information about the EV action. func (o RuleActionsPtrOutput) EventBridgeActions() RuleEventBridgeActionArrayOutput { return o.ApplyT(func(v *RuleActions) []RuleEventBridgeAction { if v == nil { @@ -5611,7 +5760,7 @@ func (o RuleActionsPtrOutput) SubmitAutoEvaluationActions() RuleSubmitAutoEvalua }).(RuleSubmitAutoEvaluationActionArrayOutput) } -// Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` +// Information about the task action. This field is required if “TriggerEventSource“ is one of the following values: “OnZendeskTicketCreate“ | “OnZendeskTicketStatusUpdate“ | “OnSalesforceCaseCreate“ func (o RuleActionsPtrOutput) TaskActions() RuleTaskActionArrayOutput { return o.ApplyT(func(v *RuleActions) []RuleTaskAction { if v == nil { @@ -5721,11 +5870,9 @@ func (o RuleAssignContactCategoryActionArrayOutput) Index(i pulumi.IntInput) Rul }).(RuleAssignContactCategoryActionOutput) } -// The definition for create case action. type RuleCreateCaseAction struct { - Fields []RuleField `pulumi:"fields"` - // The Id of template. - TemplateId string `pulumi:"templateId"` + Fields []RuleField `pulumi:"fields"` + TemplateId string `pulumi:"templateId"` } // RuleCreateCaseActionInput is an input type that accepts RuleCreateCaseActionArgs and RuleCreateCaseActionOutput values. @@ -5739,11 +5886,9 @@ type RuleCreateCaseActionInput interface { ToRuleCreateCaseActionOutputWithContext(context.Context) RuleCreateCaseActionOutput } -// The definition for create case action. type RuleCreateCaseActionArgs struct { - Fields RuleFieldArrayInput `pulumi:"fields"` - // The Id of template. - TemplateId pulumi.StringInput `pulumi:"templateId"` + Fields RuleFieldArrayInput `pulumi:"fields"` + TemplateId pulumi.StringInput `pulumi:"templateId"` } func (RuleCreateCaseActionArgs) ElementType() reflect.Type { @@ -5783,7 +5928,6 @@ func (i RuleCreateCaseActionArray) ToRuleCreateCaseActionArrayOutputWithContext( return pulumi.ToOutputWithContext(ctx, i).(RuleCreateCaseActionArrayOutput) } -// The definition for create case action. type RuleCreateCaseActionOutput struct{ *pulumi.OutputState } func (RuleCreateCaseActionOutput) ElementType() reflect.Type { @@ -5802,7 +5946,6 @@ func (o RuleCreateCaseActionOutput) Fields() RuleFieldArrayOutput { return o.ApplyT(func(v RuleCreateCaseAction) []RuleField { return v.Fields }).(RuleFieldArrayOutput) } -// The Id of template. func (o RuleCreateCaseActionOutput) TemplateId() pulumi.StringOutput { return o.ApplyT(func(v RuleCreateCaseAction) string { return v.TemplateId }).(pulumi.StringOutput) } @@ -5918,9 +6061,9 @@ func (o RuleEndAssociatedTasksActionArrayOutput) Index(i pulumi.IntInput) RuleEn }).(RuleEndAssociatedTasksActionOutput) } -// The definition for event bridge action. +// The EV action definition. type RuleEventBridgeAction struct { - // The name of the event bridge action. + // The name. Name string `pulumi:"name"` } @@ -5935,9 +6078,9 @@ type RuleEventBridgeActionInput interface { ToRuleEventBridgeActionOutputWithContext(context.Context) RuleEventBridgeActionOutput } -// The definition for event bridge action. +// The EV action definition. type RuleEventBridgeActionArgs struct { - // The name of the event bridge action. + // The name. Name pulumi.StringInput `pulumi:"name"` } @@ -5978,7 +6121,7 @@ func (i RuleEventBridgeActionArray) ToRuleEventBridgeActionArrayOutputWithContex return pulumi.ToOutputWithContext(ctx, i).(RuleEventBridgeActionArrayOutput) } -// The definition for event bridge action. +// The EV action definition. type RuleEventBridgeActionOutput struct{ *pulumi.OutputState } func (RuleEventBridgeActionOutput) ElementType() reflect.Type { @@ -5993,7 +6136,7 @@ func (o RuleEventBridgeActionOutput) ToRuleEventBridgeActionOutputWithContext(ct return o } -// The name of the event bridge action. +// The name. func (o RuleEventBridgeActionOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v RuleEventBridgeAction) string { return v.Name }).(pulumi.StringOutput) } @@ -6018,9 +6161,7 @@ func (o RuleEventBridgeActionArrayOutput) Index(i pulumi.IntInput) RuleEventBrid }).(RuleEventBridgeActionOutput) } -// The field of the case. type RuleField struct { - // The Id of the field Id string `pulumi:"id"` Value RuleFieldValue `pulumi:"value"` } @@ -6036,9 +6177,7 @@ type RuleFieldInput interface { ToRuleFieldOutputWithContext(context.Context) RuleFieldOutput } -// The field of the case. type RuleFieldArgs struct { - // The Id of the field Id pulumi.StringInput `pulumi:"id"` Value RuleFieldValueInput `pulumi:"value"` } @@ -6080,7 +6219,6 @@ func (i RuleFieldArray) ToRuleFieldArrayOutputWithContext(ctx context.Context) R return pulumi.ToOutputWithContext(ctx, i).(RuleFieldArrayOutput) } -// The field of the case. type RuleFieldOutput struct{ *pulumi.OutputState } func (RuleFieldOutput) ElementType() reflect.Type { @@ -6095,7 +6233,6 @@ func (o RuleFieldOutput) ToRuleFieldOutputWithContext(ctx context.Context) RuleF return o } -// The Id of the field func (o RuleFieldOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v RuleField) string { return v.Id }).(pulumi.StringOutput) } @@ -6124,7 +6261,7 @@ func (o RuleFieldArrayOutput) Index(i pulumi.IntInput) RuleFieldOutput { }).(RuleFieldOutput) } -// The value of the field. +// Object for case field values. type RuleFieldValue struct { BooleanValue *bool `pulumi:"booleanValue"` DoubleValue *float64 `pulumi:"doubleValue"` @@ -6143,7 +6280,7 @@ type RuleFieldValueInput interface { ToRuleFieldValueOutputWithContext(context.Context) RuleFieldValueOutput } -// The value of the field. +// Object for case field values. type RuleFieldValueArgs struct { BooleanValue pulumi.BoolPtrInput `pulumi:"booleanValue"` DoubleValue pulumi.Float64PtrInput `pulumi:"doubleValue"` @@ -6163,7 +6300,7 @@ func (i RuleFieldValueArgs) ToRuleFieldValueOutputWithContext(ctx context.Contex return pulumi.ToOutputWithContext(ctx, i).(RuleFieldValueOutput) } -// The value of the field. +// Object for case field values. type RuleFieldValueOutput struct{ *pulumi.OutputState } func (RuleFieldValueOutput) ElementType() reflect.Type { @@ -6196,9 +6333,9 @@ func (o RuleFieldValueOutput) StringValue() pulumi.StringPtrOutput { // The type of notification recipient. type RuleNotificationRecipientType struct { - // The list of recipients by user arns. + // The Amazon Resource Name (ARN) of the user account. UserArns []string `pulumi:"userArns"` - // The collection of recipients who are identified by user tags + // The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. UserTags map[string]string `pulumi:"userTags"` } @@ -6215,9 +6352,9 @@ type RuleNotificationRecipientTypeInput interface { // The type of notification recipient. type RuleNotificationRecipientTypeArgs struct { - // The list of recipients by user arns. + // The Amazon Resource Name (ARN) of the user account. UserArns pulumi.StringArrayInput `pulumi:"userArns"` - // The collection of recipients who are identified by user tags + // The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. UserTags pulumi.StringMapInput `pulumi:"userTags"` } @@ -6248,20 +6385,23 @@ func (o RuleNotificationRecipientTypeOutput) ToRuleNotificationRecipientTypeOutp return o } -// The list of recipients by user arns. +// The Amazon Resource Name (ARN) of the user account. func (o RuleNotificationRecipientTypeOutput) UserArns() pulumi.StringArrayOutput { return o.ApplyT(func(v RuleNotificationRecipientType) []string { return v.UserArns }).(pulumi.StringArrayOutput) } -// The collection of recipients who are identified by user tags +// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. func (o RuleNotificationRecipientTypeOutput) UserTags() pulumi.StringMapOutput { return o.ApplyT(func(v RuleNotificationRecipientType) map[string]string { return v.UserTags }).(pulumi.StringMapOutput) } -// A contact reference. +// Information about the reference when the “referenceType“ is “URL“. Otherwise, null. (Supports variable injection in the “Value“ field.) type RuleReference struct { - Type RuleReferenceType `pulumi:"type"` - Value string `pulumi:"value"` + // The type of the reference. ``DATE`` must be of type Epoch timestamp. + // *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + Type RuleReferenceType `pulumi:"type"` + // A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + Value string `pulumi:"value"` } // RuleReferenceInput is an input type that accepts RuleReferenceArgs and RuleReferenceOutput values. @@ -6275,10 +6415,13 @@ type RuleReferenceInput interface { ToRuleReferenceOutputWithContext(context.Context) RuleReferenceOutput } -// A contact reference. +// Information about the reference when the “referenceType“ is “URL“. Otherwise, null. (Supports variable injection in the “Value“ field.) type RuleReferenceArgs struct { - Type RuleReferenceTypeInput `pulumi:"type"` - Value pulumi.StringInput `pulumi:"value"` + // The type of the reference. ``DATE`` must be of type Epoch timestamp. + // *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + Type RuleReferenceTypeInput `pulumi:"type"` + // A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + Value pulumi.StringInput `pulumi:"value"` } func (RuleReferenceArgs) ElementType() reflect.Type { @@ -6318,7 +6461,7 @@ func (i RuleReferenceMap) ToRuleReferenceMapOutputWithContext(ctx context.Contex return pulumi.ToOutputWithContext(ctx, i).(RuleReferenceMapOutput) } -// A contact reference. +// Information about the reference when the “referenceType“ is “URL“. Otherwise, null. (Supports variable injection in the “Value“ field.) type RuleReferenceOutput struct{ *pulumi.OutputState } func (RuleReferenceOutput) ElementType() reflect.Type { @@ -6333,10 +6476,14 @@ func (o RuleReferenceOutput) ToRuleReferenceOutputWithContext(ctx context.Contex return o } +// The type of the reference. “DATE“ must be of type Epoch timestamp. +// +// *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` func (o RuleReferenceOutput) Type() RuleReferenceTypeOutput { return o.ApplyT(func(v RuleReference) RuleReferenceType { return v.Type }).(RuleReferenceTypeOutput) } +// A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). func (o RuleReferenceOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v RuleReference) string { return v.Value }).(pulumi.StringOutput) } @@ -6361,16 +6508,19 @@ func (o RuleReferenceMapOutput) MapIndex(k pulumi.StringInput) RuleReferenceOutp }).(RuleReferenceOutput) } -// The definition for sending notification action. +// Information about the send notification action. type RuleSendNotificationAction struct { - // The content of notification. + // Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Content string `pulumi:"content"` - // The type of content. + // Content type format. + // *Allowed value*: ``PLAIN_TEXT`` ContentType RuleSendNotificationActionContentType `pulumi:"contentType"` - // The means of delivery. + // Notification delivery method. + // *Allowed value*: ``EMAIL`` DeliveryMethod RuleSendNotificationActionDeliveryMethod `pulumi:"deliveryMethod"` - Recipient RuleNotificationRecipientType `pulumi:"recipient"` - // The subject of notification. + // Notification recipient. + Recipient RuleNotificationRecipientType `pulumi:"recipient"` + // The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Subject *string `pulumi:"subject"` } @@ -6385,16 +6535,19 @@ type RuleSendNotificationActionInput interface { ToRuleSendNotificationActionOutputWithContext(context.Context) RuleSendNotificationActionOutput } -// The definition for sending notification action. +// Information about the send notification action. type RuleSendNotificationActionArgs struct { - // The content of notification. + // Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Content pulumi.StringInput `pulumi:"content"` - // The type of content. + // Content type format. + // *Allowed value*: ``PLAIN_TEXT`` ContentType RuleSendNotificationActionContentTypeInput `pulumi:"contentType"` - // The means of delivery. + // Notification delivery method. + // *Allowed value*: ``EMAIL`` DeliveryMethod RuleSendNotificationActionDeliveryMethodInput `pulumi:"deliveryMethod"` - Recipient RuleNotificationRecipientTypeInput `pulumi:"recipient"` - // The subject of notification. + // Notification recipient. + Recipient RuleNotificationRecipientTypeInput `pulumi:"recipient"` + // The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Subject pulumi.StringPtrInput `pulumi:"subject"` } @@ -6435,7 +6588,7 @@ func (i RuleSendNotificationActionArray) ToRuleSendNotificationActionArrayOutput return pulumi.ToOutputWithContext(ctx, i).(RuleSendNotificationActionArrayOutput) } -// The definition for sending notification action. +// Information about the send notification action. type RuleSendNotificationActionOutput struct{ *pulumi.OutputState } func (RuleSendNotificationActionOutput) ElementType() reflect.Type { @@ -6450,26 +6603,31 @@ func (o RuleSendNotificationActionOutput) ToRuleSendNotificationActionOutputWith return o } -// The content of notification. +// Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. func (o RuleSendNotificationActionOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v RuleSendNotificationAction) string { return v.Content }).(pulumi.StringOutput) } -// The type of content. +// Content type format. +// +// *Allowed value*: ``PLAIN_TEXT`` func (o RuleSendNotificationActionOutput) ContentType() RuleSendNotificationActionContentTypeOutput { return o.ApplyT(func(v RuleSendNotificationAction) RuleSendNotificationActionContentType { return v.ContentType }).(RuleSendNotificationActionContentTypeOutput) } -// The means of delivery. +// Notification delivery method. +// +// *Allowed value*: ``EMAIL`` func (o RuleSendNotificationActionOutput) DeliveryMethod() RuleSendNotificationActionDeliveryMethodOutput { return o.ApplyT(func(v RuleSendNotificationAction) RuleSendNotificationActionDeliveryMethod { return v.DeliveryMethod }).(RuleSendNotificationActionDeliveryMethodOutput) } +// Notification recipient. func (o RuleSendNotificationActionOutput) Recipient() RuleNotificationRecipientTypeOutput { return o.ApplyT(func(v RuleSendNotificationAction) RuleNotificationRecipientType { return v.Recipient }).(RuleNotificationRecipientTypeOutput) } -// The subject of notification. +// The subject of the email if the delivery method is “EMAIL“. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. func (o RuleSendNotificationActionOutput) Subject() pulumi.StringPtrOutput { return o.ApplyT(func(v RuleSendNotificationAction) *string { return v.Subject }).(pulumi.StringPtrOutput) } @@ -6494,9 +6652,7 @@ func (o RuleSendNotificationActionArrayOutput) Index(i pulumi.IntInput) RuleSend }).(RuleSendNotificationActionOutput) } -// The definition of submit auto evaluation action. type RuleSubmitAutoEvaluationAction struct { - // The Amazon Resource Name (ARN) of the evaluation form. EvaluationFormArn string `pulumi:"evaluationFormArn"` } @@ -6511,9 +6667,7 @@ type RuleSubmitAutoEvaluationActionInput interface { ToRuleSubmitAutoEvaluationActionOutputWithContext(context.Context) RuleSubmitAutoEvaluationActionOutput } -// The definition of submit auto evaluation action. type RuleSubmitAutoEvaluationActionArgs struct { - // The Amazon Resource Name (ARN) of the evaluation form. EvaluationFormArn pulumi.StringInput `pulumi:"evaluationFormArn"` } @@ -6554,7 +6708,6 @@ func (i RuleSubmitAutoEvaluationActionArray) ToRuleSubmitAutoEvaluationActionArr return pulumi.ToOutputWithContext(ctx, i).(RuleSubmitAutoEvaluationActionArrayOutput) } -// The definition of submit auto evaluation action. type RuleSubmitAutoEvaluationActionOutput struct{ *pulumi.OutputState } func (RuleSubmitAutoEvaluationActionOutput) ElementType() reflect.Type { @@ -6569,7 +6722,6 @@ func (o RuleSubmitAutoEvaluationActionOutput) ToRuleSubmitAutoEvaluationActionOu return o } -// The Amazon Resource Name (ARN) of the evaluation form. func (o RuleSubmitAutoEvaluationActionOutput) EvaluationFormArn() pulumi.StringOutput { return o.ApplyT(func(v RuleSubmitAutoEvaluationAction) string { return v.EvaluationFormArn }).(pulumi.StringOutput) } @@ -6596,21 +6748,21 @@ func (o RuleSubmitAutoEvaluationActionArrayOutput) Index(i pulumi.IntInput) Rule // A key-value pair to associate with a resource. type RuleTag struct { - // 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 -. + // 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 - Key string `pulumi:"key"` - // The value for the tag. You can specify a value that's 1 to 256 characters in length. + // 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 - Value string `pulumi:"value"` } -// The definition of task action. +// Information about the task action. This field is required if “TriggerEventSource“ is one of the following values: “OnZendeskTicketCreate“ | “OnZendeskTicketStatusUpdate“ | “OnSalesforceCaseCreate“ type RuleTaskAction struct { - // The Amazon Resource Name (ARN) of the contact flow. + // The Amazon Resource Name (ARN) of the flow. ContactFlowArn string `pulumi:"contactFlowArn"` - // The description which appears in the agent's Contact Control Panel (CCP). + // The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Description *string `pulumi:"description"` - // The name which appears in the agent's Contact Control Panel (CCP). + // The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Name string `pulumi:"name"` - // A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + // Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) References map[string]RuleReference `pulumi:"references"` } @@ -6625,15 +6777,15 @@ type RuleTaskActionInput interface { ToRuleTaskActionOutputWithContext(context.Context) RuleTaskActionOutput } -// The definition of task action. +// Information about the task action. This field is required if “TriggerEventSource“ is one of the following values: “OnZendeskTicketCreate“ | “OnZendeskTicketStatusUpdate“ | “OnSalesforceCaseCreate“ type RuleTaskActionArgs struct { - // The Amazon Resource Name (ARN) of the contact flow. + // The Amazon Resource Name (ARN) of the flow. ContactFlowArn pulumi.StringInput `pulumi:"contactFlowArn"` - // The description which appears in the agent's Contact Control Panel (CCP). + // The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Description pulumi.StringPtrInput `pulumi:"description"` - // The name which appears in the agent's Contact Control Panel (CCP). + // The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. Name pulumi.StringInput `pulumi:"name"` - // A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + // Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) References RuleReferenceMapInput `pulumi:"references"` } @@ -6674,7 +6826,7 @@ func (i RuleTaskActionArray) ToRuleTaskActionArrayOutputWithContext(ctx context. return pulumi.ToOutputWithContext(ctx, i).(RuleTaskActionArrayOutput) } -// The definition of task action. +// Information about the task action. This field is required if “TriggerEventSource“ is one of the following values: “OnZendeskTicketCreate“ | “OnZendeskTicketStatusUpdate“ | “OnSalesforceCaseCreate“ type RuleTaskActionOutput struct{ *pulumi.OutputState } func (RuleTaskActionOutput) ElementType() reflect.Type { @@ -6689,22 +6841,22 @@ func (o RuleTaskActionOutput) ToRuleTaskActionOutputWithContext(ctx context.Cont return o } -// The Amazon Resource Name (ARN) of the contact flow. +// The Amazon Resource Name (ARN) of the flow. func (o RuleTaskActionOutput) ContactFlowArn() pulumi.StringOutput { return o.ApplyT(func(v RuleTaskAction) string { return v.ContactFlowArn }).(pulumi.StringOutput) } -// The description which appears in the agent's Contact Control Panel (CCP). +// The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. func (o RuleTaskActionOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v RuleTaskAction) *string { return v.Description }).(pulumi.StringPtrOutput) } -// The name which appears in the agent's Contact Control Panel (CCP). +// The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. func (o RuleTaskActionOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v RuleTaskAction) string { return v.Name }).(pulumi.StringOutput) } -// A formatted URL that is shown to an agent in the Contact Control Panel (CCP). +// Information about the reference when the “referenceType“ is “URL“. Otherwise, null. “URL“ is the only accepted type. (Supports variable injection in the “Value“ field.) func (o RuleTaskActionOutput) References() RuleReferenceMapOutput { return o.ApplyT(func(v RuleTaskAction) map[string]RuleReference { return v.References }).(RuleReferenceMapOutput) } @@ -6729,11 +6881,11 @@ func (o RuleTaskActionArrayOutput) Index(i pulumi.IntInput) RuleTaskActionOutput }).(RuleTaskActionOutput) } -// The event source that will trigger the rule. +// The name of the event source. type RuleTriggerEventSource struct { - // The name of event source. + // The name of the event source. EventSourceName RuleTriggerEventSourceEventSourceName `pulumi:"eventSourceName"` - // The Amazon Resource Name (ARN) for the AppIntegration association. + // The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` IntegrationAssociationArn *string `pulumi:"integrationAssociationArn"` } @@ -6748,11 +6900,11 @@ type RuleTriggerEventSourceInput interface { ToRuleTriggerEventSourceOutputWithContext(context.Context) RuleTriggerEventSourceOutput } -// The event source that will trigger the rule. +// The name of the event source. type RuleTriggerEventSourceArgs struct { - // The name of event source. + // The name of the event source. EventSourceName RuleTriggerEventSourceEventSourceNameInput `pulumi:"eventSourceName"` - // The Amazon Resource Name (ARN) for the AppIntegration association. + // The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` IntegrationAssociationArn pulumi.StringPtrInput `pulumi:"integrationAssociationArn"` } @@ -6768,7 +6920,7 @@ func (i RuleTriggerEventSourceArgs) ToRuleTriggerEventSourceOutputWithContext(ct return pulumi.ToOutputWithContext(ctx, i).(RuleTriggerEventSourceOutput) } -// The event source that will trigger the rule. +// The name of the event source. type RuleTriggerEventSourceOutput struct{ *pulumi.OutputState } func (RuleTriggerEventSourceOutput) ElementType() reflect.Type { @@ -6783,17 +6935,16 @@ func (o RuleTriggerEventSourceOutput) ToRuleTriggerEventSourceOutputWithContext( return o } -// The name of event source. +// The name of the event source. func (o RuleTriggerEventSourceOutput) EventSourceName() RuleTriggerEventSourceEventSourceNameOutput { return o.ApplyT(func(v RuleTriggerEventSource) RuleTriggerEventSourceEventSourceName { return v.EventSourceName }).(RuleTriggerEventSourceEventSourceNameOutput) } -// The Amazon Resource Name (ARN) for the AppIntegration association. +// The Amazon Resource Name (ARN) of the integration association. “IntegrationAssociationArn“ is required if “TriggerEventSource“ is one of the following values: “OnZendeskTicketCreate“ | “OnZendeskTicketStatusUpdate“ | “OnSalesforceCaseCreate“ func (o RuleTriggerEventSourceOutput) IntegrationAssociationArn() pulumi.StringPtrOutput { return o.ApplyT(func(v RuleTriggerEventSource) *string { return v.IntegrationAssociationArn }).(pulumi.StringPtrOutput) } -// The definition for update case action. type RuleUpdateCaseAction struct { Fields []RuleField `pulumi:"fields"` } @@ -6809,7 +6960,6 @@ type RuleUpdateCaseActionInput interface { ToRuleUpdateCaseActionOutputWithContext(context.Context) RuleUpdateCaseActionOutput } -// The definition for update case action. type RuleUpdateCaseActionArgs struct { Fields RuleFieldArrayInput `pulumi:"fields"` } @@ -6851,7 +7001,6 @@ func (i RuleUpdateCaseActionArray) ToRuleUpdateCaseActionArrayOutputWithContext( return pulumi.ToOutputWithContext(ctx, i).(RuleUpdateCaseActionArrayOutput) } -// The definition for update case action. type RuleUpdateCaseActionOutput struct{ *pulumi.OutputState } func (RuleUpdateCaseActionOutput) ElementType() reflect.Type { @@ -8816,9 +8965,9 @@ func (o UserHierarchyStructurePropertiesPtrOutput) LevelTwo() UserHierarchyStruc type UserIdentityInfo struct { // The email address. If you are using SAML for identity management and include this parameter, an error is returned. Email *string `pulumi:"email"` - // The first name. This is required if you are using Amazon Connect or SAML for identity management. + // The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. FirstName *string `pulumi:"firstName"` - // The last name. This is required if you are using Amazon Connect or SAML for identity management. + // The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. LastName *string `pulumi:"lastName"` // The user's mobile number. Mobile *string `pulumi:"mobile"` @@ -8843,9 +8992,9 @@ type UserIdentityInfoInput interface { type UserIdentityInfoArgs struct { // The email address. If you are using SAML for identity management and include this parameter, an error is returned. Email pulumi.StringPtrInput `pulumi:"email"` - // The first name. This is required if you are using Amazon Connect or SAML for identity management. + // The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. FirstName pulumi.StringPtrInput `pulumi:"firstName"` - // The last name. This is required if you are using Amazon Connect or SAML for identity management. + // The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. LastName pulumi.StringPtrInput `pulumi:"lastName"` // The user's mobile number. Mobile pulumi.StringPtrInput `pulumi:"mobile"` @@ -8938,12 +9087,12 @@ func (o UserIdentityInfoOutput) Email() pulumi.StringPtrOutput { return o.ApplyT(func(v UserIdentityInfo) *string { return v.Email }).(pulumi.StringPtrOutput) } -// The first name. This is required if you are using Amazon Connect or SAML for identity management. +// The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. func (o UserIdentityInfoOutput) FirstName() pulumi.StringPtrOutput { return o.ApplyT(func(v UserIdentityInfo) *string { return v.FirstName }).(pulumi.StringPtrOutput) } -// The last name. This is required if you are using Amazon Connect or SAML for identity management. +// The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. func (o UserIdentityInfoOutput) LastName() pulumi.StringPtrOutput { return o.ApplyT(func(v UserIdentityInfo) *string { return v.LastName }).(pulumi.StringPtrOutput) } @@ -8994,7 +9143,7 @@ func (o UserIdentityInfoPtrOutput) Email() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// The first name. This is required if you are using Amazon Connect or SAML for identity management. +// The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. func (o UserIdentityInfoPtrOutput) FirstName() pulumi.StringPtrOutput { return o.ApplyT(func(v *UserIdentityInfo) *string { if v == nil { @@ -9004,7 +9153,7 @@ func (o UserIdentityInfoPtrOutput) FirstName() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// The last name. This is required if you are using Amazon Connect or SAML for identity management. +// The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. func (o UserIdentityInfoPtrOutput) LastName() pulumi.StringPtrOutput { return o.ApplyT(func(v *UserIdentityInfo) *string { if v == nil { @@ -9466,6 +9615,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*InstanceStorageConfigS3ConfigPtrInput)(nil)).Elem(), InstanceStorageConfigS3ConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*QueueOutboundCallerConfigInput)(nil)).Elem(), QueueOutboundCallerConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*QueueOutboundCallerConfigPtrInput)(nil)).Elem(), QueueOutboundCallerConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*QueueOutboundEmailConfigInput)(nil)).Elem(), QueueOutboundEmailConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*QueueOutboundEmailConfigPtrInput)(nil)).Elem(), QueueOutboundEmailConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*QuickConnectConfigInput)(nil)).Elem(), QuickConnectConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*QuickConnectPhoneNumberQuickConnectConfigInput)(nil)).Elem(), QuickConnectPhoneNumberQuickConnectConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*QuickConnectPhoneNumberQuickConnectConfigPtrInput)(nil)).Elem(), QuickConnectPhoneNumberQuickConnectConfigArgs{}) @@ -9590,6 +9741,8 @@ func init() { pulumi.RegisterOutputType(InstanceStorageConfigS3ConfigPtrOutput{}) pulumi.RegisterOutputType(QueueOutboundCallerConfigOutput{}) pulumi.RegisterOutputType(QueueOutboundCallerConfigPtrOutput{}) + pulumi.RegisterOutputType(QueueOutboundEmailConfigOutput{}) + pulumi.RegisterOutputType(QueueOutboundEmailConfigPtrOutput{}) pulumi.RegisterOutputType(QuickConnectConfigOutput{}) pulumi.RegisterOutputType(QuickConnectConfigPtrOutput{}) pulumi.RegisterOutputType(QuickConnectPhoneNumberQuickConnectConfigOutput{}) diff --git a/sdk/go/aws/connect/queue.go b/sdk/go/aws/connect/queue.go index 000bd8441c..50c6a00a4e 100644 --- a/sdk/go/aws/connect/queue.go +++ b/sdk/go/aws/connect/queue.go @@ -29,6 +29,8 @@ type Queue struct { Name pulumi.StringOutput `pulumi:"name"` // The outbound caller ID name, number, and outbound whisper flow. OutboundCallerConfig QueueOutboundCallerConfigPtrOutput `pulumi:"outboundCallerConfig"` + // The outbound email address ID. + OutboundEmailConfig QueueOutboundEmailConfigPtrOutput `pulumi:"outboundEmailConfig"` // The Amazon Resource Name (ARN) for the queue. QueueArn pulumi.StringOutput `pulumi:"queueArn"` // The quick connects available to agents who are working the queue. @@ -99,6 +101,8 @@ type queueArgs struct { Name *string `pulumi:"name"` // The outbound caller ID name, number, and outbound whisper flow. OutboundCallerConfig *QueueOutboundCallerConfig `pulumi:"outboundCallerConfig"` + // The outbound email address ID. + OutboundEmailConfig *QueueOutboundEmailConfig `pulumi:"outboundEmailConfig"` // The quick connects available to agents who are working the queue. QuickConnectArns []string `pulumi:"quickConnectArns"` // The status of the queue. @@ -121,6 +125,8 @@ type QueueArgs struct { Name pulumi.StringPtrInput // The outbound caller ID name, number, and outbound whisper flow. OutboundCallerConfig QueueOutboundCallerConfigPtrInput + // The outbound email address ID. + OutboundEmailConfig QueueOutboundEmailConfigPtrInput // The quick connects available to agents who are working the queue. QuickConnectArns pulumi.StringArrayInput // The status of the queue. @@ -196,6 +202,11 @@ func (o QueueOutput) OutboundCallerConfig() QueueOutboundCallerConfigPtrOutput { return o.ApplyT(func(v *Queue) QueueOutboundCallerConfigPtrOutput { return v.OutboundCallerConfig }).(QueueOutboundCallerConfigPtrOutput) } +// The outbound email address ID. +func (o QueueOutput) OutboundEmailConfig() QueueOutboundEmailConfigPtrOutput { + return o.ApplyT(func(v *Queue) QueueOutboundEmailConfigPtrOutput { return v.OutboundEmailConfig }).(QueueOutboundEmailConfigPtrOutput) +} + // The Amazon Resource Name (ARN) for the queue. func (o QueueOutput) QueueArn() pulumi.StringOutput { return o.ApplyT(func(v *Queue) pulumi.StringOutput { return v.QueueArn }).(pulumi.StringOutput) diff --git a/sdk/go/aws/connect/rule.go b/sdk/go/aws/connect/rule.go index afaa749466..40dfd902a6 100644 --- a/sdk/go/aws/connect/rule.go +++ b/sdk/go/aws/connect/rule.go @@ -13,25 +13,26 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Resource Type definition for AWS:Connect::Rule +// Creates a rule for the specified CON instance. type Rule struct { pulumi.CustomResourceState - // The list of actions that will be executed when a rule is triggered. + // A list of actions to be run when the rule is triggered. Actions RuleActionsOutput `pulumi:"actions"` - // The conditions of a rule. + // The conditions of the rule. Function pulumi.StringOutput `pulumi:"function"` // The Amazon Resource Name (ARN) of the instance. InstanceArn pulumi.StringOutput `pulumi:"instanceArn"` // The name of the rule. Name pulumi.StringOutput `pulumi:"name"` - // The publish status of a rule, either draft or published. + // The publish status of the rule. + // *Allowed values*: ``DRAFT`` | ``PUBLISHED`` PublishStatus RulePublishStatusOutput `pulumi:"publishStatus"` // The Amazon Resource Name (ARN) of the rule. RuleArn pulumi.StringOutput `pulumi:"ruleArn"` - // One or more tags. + // The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags aws.TagArrayOutput `pulumi:"tags"` - // The event source that triggers the rule. + // The event source to trigger the rule. TriggerEventSource RuleTriggerEventSourceOutput `pulumi:"triggerEventSource"` } @@ -95,37 +96,39 @@ func (RuleState) ElementType() reflect.Type { } type ruleArgs struct { - // The list of actions that will be executed when a rule is triggered. + // A list of actions to be run when the rule is triggered. Actions RuleActions `pulumi:"actions"` - // The conditions of a rule. + // The conditions of the rule. Function string `pulumi:"function"` // The Amazon Resource Name (ARN) of the instance. InstanceArn string `pulumi:"instanceArn"` // The name of the rule. Name *string `pulumi:"name"` - // The publish status of a rule, either draft or published. + // The publish status of the rule. + // *Allowed values*: ``DRAFT`` | ``PUBLISHED`` PublishStatus RulePublishStatus `pulumi:"publishStatus"` - // One or more tags. + // The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags []aws.Tag `pulumi:"tags"` - // The event source that triggers the rule. + // The event source to trigger the rule. TriggerEventSource RuleTriggerEventSource `pulumi:"triggerEventSource"` } // The set of arguments for constructing a Rule resource. type RuleArgs struct { - // The list of actions that will be executed when a rule is triggered. + // A list of actions to be run when the rule is triggered. Actions RuleActionsInput - // The conditions of a rule. + // The conditions of the rule. Function pulumi.StringInput // The Amazon Resource Name (ARN) of the instance. InstanceArn pulumi.StringInput // The name of the rule. Name pulumi.StringPtrInput - // The publish status of a rule, either draft or published. + // The publish status of the rule. + // *Allowed values*: ``DRAFT`` | ``PUBLISHED`` PublishStatus RulePublishStatusInput - // One or more tags. + // The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags aws.TagArrayInput - // The event source that triggers the rule. + // The event source to trigger the rule. TriggerEventSource RuleTriggerEventSourceInput } @@ -166,12 +169,12 @@ func (o RuleOutput) ToRuleOutputWithContext(ctx context.Context) RuleOutput { return o } -// The list of actions that will be executed when a rule is triggered. +// A list of actions to be run when the rule is triggered. func (o RuleOutput) Actions() RuleActionsOutput { return o.ApplyT(func(v *Rule) RuleActionsOutput { return v.Actions }).(RuleActionsOutput) } -// The conditions of a rule. +// The conditions of the rule. func (o RuleOutput) Function() pulumi.StringOutput { return o.ApplyT(func(v *Rule) pulumi.StringOutput { return v.Function }).(pulumi.StringOutput) } @@ -186,7 +189,9 @@ func (o RuleOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Rule) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// The publish status of a rule, either draft or published. +// The publish status of the rule. +// +// *Allowed values*: ``DRAFT`` | ``PUBLISHED`` func (o RuleOutput) PublishStatus() RulePublishStatusOutput { return o.ApplyT(func(v *Rule) RulePublishStatusOutput { return v.PublishStatus }).(RulePublishStatusOutput) } @@ -196,12 +201,12 @@ func (o RuleOutput) RuleArn() pulumi.StringOutput { return o.ApplyT(func(v *Rule) pulumi.StringOutput { return v.RuleArn }).(pulumi.StringOutput) } -// One or more tags. +// The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. func (o RuleOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *Rule) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } -// The event source that triggers the rule. +// The event source to trigger the rule. func (o RuleOutput) TriggerEventSource() RuleTriggerEventSourceOutput { return o.ApplyT(func(v *Rule) RuleTriggerEventSourceOutput { return v.TriggerEventSource }).(RuleTriggerEventSourceOutput) } diff --git a/sdk/go/aws/connectcampaignsv2/pulumiTypes.go b/sdk/go/aws/connectcampaignsv2/pulumiTypes.go index 876a9c395b..086d70d07d 100644 --- a/sdk/go/aws/connectcampaignsv2/pulumiTypes.go +++ b/sdk/go/aws/connectcampaignsv2/pulumiTypes.go @@ -1605,6 +1605,146 @@ func (o CampaignEmailOutboundModePtrOutput) AgentlessConfig() CampaignAgentlessC }).(CampaignAgentlessConfigPtrOutput) } +// The event trigger of the campaign +type CampaignEventTrigger struct { + // The Amazon Resource Name (ARN) of the Customer Profiles domain. + CustomerProfilesDomainArn *string `pulumi:"customerProfilesDomainArn"` +} + +// CampaignEventTriggerInput is an input type that accepts CampaignEventTriggerArgs and CampaignEventTriggerOutput values. +// You can construct a concrete instance of `CampaignEventTriggerInput` via: +// +// CampaignEventTriggerArgs{...} +type CampaignEventTriggerInput interface { + pulumi.Input + + ToCampaignEventTriggerOutput() CampaignEventTriggerOutput + ToCampaignEventTriggerOutputWithContext(context.Context) CampaignEventTriggerOutput +} + +// The event trigger of the campaign +type CampaignEventTriggerArgs struct { + // The Amazon Resource Name (ARN) of the Customer Profiles domain. + CustomerProfilesDomainArn pulumi.StringPtrInput `pulumi:"customerProfilesDomainArn"` +} + +func (CampaignEventTriggerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CampaignEventTrigger)(nil)).Elem() +} + +func (i CampaignEventTriggerArgs) ToCampaignEventTriggerOutput() CampaignEventTriggerOutput { + return i.ToCampaignEventTriggerOutputWithContext(context.Background()) +} + +func (i CampaignEventTriggerArgs) ToCampaignEventTriggerOutputWithContext(ctx context.Context) CampaignEventTriggerOutput { + return pulumi.ToOutputWithContext(ctx, i).(CampaignEventTriggerOutput) +} + +func (i CampaignEventTriggerArgs) ToCampaignEventTriggerPtrOutput() CampaignEventTriggerPtrOutput { + return i.ToCampaignEventTriggerPtrOutputWithContext(context.Background()) +} + +func (i CampaignEventTriggerArgs) ToCampaignEventTriggerPtrOutputWithContext(ctx context.Context) CampaignEventTriggerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CampaignEventTriggerOutput).ToCampaignEventTriggerPtrOutputWithContext(ctx) +} + +// CampaignEventTriggerPtrInput is an input type that accepts CampaignEventTriggerArgs, CampaignEventTriggerPtr and CampaignEventTriggerPtrOutput values. +// You can construct a concrete instance of `CampaignEventTriggerPtrInput` via: +// +// CampaignEventTriggerArgs{...} +// +// or: +// +// nil +type CampaignEventTriggerPtrInput interface { + pulumi.Input + + ToCampaignEventTriggerPtrOutput() CampaignEventTriggerPtrOutput + ToCampaignEventTriggerPtrOutputWithContext(context.Context) CampaignEventTriggerPtrOutput +} + +type campaignEventTriggerPtrType CampaignEventTriggerArgs + +func CampaignEventTriggerPtr(v *CampaignEventTriggerArgs) CampaignEventTriggerPtrInput { + return (*campaignEventTriggerPtrType)(v) +} + +func (*campaignEventTriggerPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**CampaignEventTrigger)(nil)).Elem() +} + +func (i *campaignEventTriggerPtrType) ToCampaignEventTriggerPtrOutput() CampaignEventTriggerPtrOutput { + return i.ToCampaignEventTriggerPtrOutputWithContext(context.Background()) +} + +func (i *campaignEventTriggerPtrType) ToCampaignEventTriggerPtrOutputWithContext(ctx context.Context) CampaignEventTriggerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CampaignEventTriggerPtrOutput) +} + +// The event trigger of the campaign +type CampaignEventTriggerOutput struct{ *pulumi.OutputState } + +func (CampaignEventTriggerOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CampaignEventTrigger)(nil)).Elem() +} + +func (o CampaignEventTriggerOutput) ToCampaignEventTriggerOutput() CampaignEventTriggerOutput { + return o +} + +func (o CampaignEventTriggerOutput) ToCampaignEventTriggerOutputWithContext(ctx context.Context) CampaignEventTriggerOutput { + return o +} + +func (o CampaignEventTriggerOutput) ToCampaignEventTriggerPtrOutput() CampaignEventTriggerPtrOutput { + return o.ToCampaignEventTriggerPtrOutputWithContext(context.Background()) +} + +func (o CampaignEventTriggerOutput) ToCampaignEventTriggerPtrOutputWithContext(ctx context.Context) CampaignEventTriggerPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CampaignEventTrigger) *CampaignEventTrigger { + return &v + }).(CampaignEventTriggerPtrOutput) +} + +// The Amazon Resource Name (ARN) of the Customer Profiles domain. +func (o CampaignEventTriggerOutput) CustomerProfilesDomainArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v CampaignEventTrigger) *string { return v.CustomerProfilesDomainArn }).(pulumi.StringPtrOutput) +} + +type CampaignEventTriggerPtrOutput struct{ *pulumi.OutputState } + +func (CampaignEventTriggerPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CampaignEventTrigger)(nil)).Elem() +} + +func (o CampaignEventTriggerPtrOutput) ToCampaignEventTriggerPtrOutput() CampaignEventTriggerPtrOutput { + return o +} + +func (o CampaignEventTriggerPtrOutput) ToCampaignEventTriggerPtrOutputWithContext(ctx context.Context) CampaignEventTriggerPtrOutput { + return o +} + +func (o CampaignEventTriggerPtrOutput) Elem() CampaignEventTriggerOutput { + return o.ApplyT(func(v *CampaignEventTrigger) CampaignEventTrigger { + if v != nil { + return *v + } + var ret CampaignEventTrigger + return ret + }).(CampaignEventTriggerOutput) +} + +// The Amazon Resource Name (ARN) of the Customer Profiles domain. +func (o CampaignEventTriggerPtrOutput) CustomerProfilesDomainArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CampaignEventTrigger) *string { + if v == nil { + return nil + } + return v.CustomerProfilesDomainArn + }).(pulumi.StringPtrOutput) +} + // Local time zone config type CampaignLocalTimeZoneConfig struct { // The timezone to use for all recipients. @@ -3093,10 +3233,12 @@ func (o CampaignSmsOutboundModePtrOutput) AgentlessConfig() CampaignAgentlessCon }).(CampaignAgentlessConfigPtrOutput) } -// The possible types of channel config parameters +// The possible source of the campaign type CampaignSource struct { // The Amazon Resource Name (ARN) of the Customer Profiles segment. CustomerProfilesSegmentArn *string `pulumi:"customerProfilesSegmentArn"` + // The event trigger of the campaign. + EventTrigger *CampaignEventTrigger `pulumi:"eventTrigger"` } // CampaignSourceInput is an input type that accepts CampaignSourceArgs and CampaignSourceOutput values. @@ -3110,10 +3252,12 @@ type CampaignSourceInput interface { ToCampaignSourceOutputWithContext(context.Context) CampaignSourceOutput } -// The possible types of channel config parameters +// The possible source of the campaign type CampaignSourceArgs struct { // The Amazon Resource Name (ARN) of the Customer Profiles segment. CustomerProfilesSegmentArn pulumi.StringPtrInput `pulumi:"customerProfilesSegmentArn"` + // The event trigger of the campaign. + EventTrigger CampaignEventTriggerPtrInput `pulumi:"eventTrigger"` } func (CampaignSourceArgs) ElementType() reflect.Type { @@ -3169,7 +3313,7 @@ func (i *campaignSourcePtrType) ToCampaignSourcePtrOutputWithContext(ctx context return pulumi.ToOutputWithContext(ctx, i).(CampaignSourcePtrOutput) } -// The possible types of channel config parameters +// The possible source of the campaign type CampaignSourceOutput struct{ *pulumi.OutputState } func (CampaignSourceOutput) ElementType() reflect.Type { @@ -3199,6 +3343,11 @@ func (o CampaignSourceOutput) CustomerProfilesSegmentArn() pulumi.StringPtrOutpu return o.ApplyT(func(v CampaignSource) *string { return v.CustomerProfilesSegmentArn }).(pulumi.StringPtrOutput) } +// The event trigger of the campaign. +func (o CampaignSourceOutput) EventTrigger() CampaignEventTriggerPtrOutput { + return o.ApplyT(func(v CampaignSource) *CampaignEventTrigger { return v.EventTrigger }).(CampaignEventTriggerPtrOutput) +} + type CampaignSourcePtrOutput struct{ *pulumi.OutputState } func (CampaignSourcePtrOutput) ElementType() reflect.Type { @@ -3233,6 +3382,16 @@ func (o CampaignSourcePtrOutput) CustomerProfilesSegmentArn() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } +// The event trigger of the campaign. +func (o CampaignSourcePtrOutput) EventTrigger() CampaignEventTriggerPtrOutput { + return o.ApplyT(func(v *CampaignSource) *CampaignEventTrigger { + if v == nil { + return nil + } + return v.EventTrigger + }).(CampaignEventTriggerPtrOutput) +} + type CampaignTag struct { // The key name of the tag. Key string `pulumi:"key"` @@ -4081,6 +4240,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CampaignEmailOutboundConfigPtrInput)(nil)).Elem(), CampaignEmailOutboundConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CampaignEmailOutboundModeInput)(nil)).Elem(), CampaignEmailOutboundModeArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CampaignEmailOutboundModePtrInput)(nil)).Elem(), CampaignEmailOutboundModeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CampaignEventTriggerInput)(nil)).Elem(), CampaignEventTriggerArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CampaignEventTriggerPtrInput)(nil)).Elem(), CampaignEventTriggerArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CampaignLocalTimeZoneConfigInput)(nil)).Elem(), CampaignLocalTimeZoneConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CampaignLocalTimeZoneConfigPtrInput)(nil)).Elem(), CampaignLocalTimeZoneConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CampaignOpenHoursInput)(nil)).Elem(), CampaignOpenHoursArgs{}) @@ -4135,6 +4296,8 @@ func init() { pulumi.RegisterOutputType(CampaignEmailOutboundConfigPtrOutput{}) pulumi.RegisterOutputType(CampaignEmailOutboundModeOutput{}) pulumi.RegisterOutputType(CampaignEmailOutboundModePtrOutput{}) + pulumi.RegisterOutputType(CampaignEventTriggerOutput{}) + pulumi.RegisterOutputType(CampaignEventTriggerPtrOutput{}) pulumi.RegisterOutputType(CampaignLocalTimeZoneConfigOutput{}) pulumi.RegisterOutputType(CampaignLocalTimeZoneConfigPtrOutput{}) pulumi.RegisterOutputType(CampaignOpenHoursOutput{}) diff --git a/sdk/go/aws/ec2/getVpcEndpoint.go b/sdk/go/aws/ec2/getVpcEndpoint.go index 885de52658..fd6b143beb 100644 --- a/sdk/go/aws/ec2/getVpcEndpoint.go +++ b/sdk/go/aws/ec2/getVpcEndpoint.go @@ -43,9 +43,11 @@ type LookupVpcEndpointResult struct { // ["Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com", "Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3-us-east-1a.ec2.us-east-1.vpce.amazonaws.com", "Z1C12344VYDITB0:ec2.us-east-1.amazonaws.com"] // // If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change. - DnsEntries []string `pulumi:"dnsEntries"` + DnsEntries []string `pulumi:"dnsEntries"` + DnsOptions *VpcEndpointDnsOptionsSpecification `pulumi:"dnsOptions"` // The ID of the VPC endpoint. - Id *string `pulumi:"id"` + Id *string `pulumi:"id"` + IpAddressType *VpcEndpointIpAddressType `pulumi:"ipAddressType"` // (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. NetworkInterfaceIds []string `pulumi:"networkInterfaceIds"` // An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints. @@ -115,11 +117,19 @@ func (o LookupVpcEndpointResultOutput) DnsEntries() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupVpcEndpointResult) []string { return v.DnsEntries }).(pulumi.StringArrayOutput) } +func (o LookupVpcEndpointResultOutput) DnsOptions() VpcEndpointDnsOptionsSpecificationPtrOutput { + return o.ApplyT(func(v LookupVpcEndpointResult) *VpcEndpointDnsOptionsSpecification { return v.DnsOptions }).(VpcEndpointDnsOptionsSpecificationPtrOutput) +} + // The ID of the VPC endpoint. func (o LookupVpcEndpointResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupVpcEndpointResult) *string { return v.Id }).(pulumi.StringPtrOutput) } +func (o LookupVpcEndpointResultOutput) IpAddressType() VpcEndpointIpAddressTypePtrOutput { + return o.ApplyT(func(v LookupVpcEndpointResult) *VpcEndpointIpAddressType { return v.IpAddressType }).(VpcEndpointIpAddressTypePtrOutput) +} + // (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. func (o LookupVpcEndpointResultOutput) NetworkInterfaceIds() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupVpcEndpointResult) []string { return v.NetworkInterfaceIds }).(pulumi.StringArrayOutput) diff --git a/sdk/go/aws/ec2/pulumiEnums.go b/sdk/go/aws/ec2/pulumiEnums.go index 17630e5296..128087ceb2 100644 --- a/sdk/go/aws/ec2/pulumiEnums.go +++ b/sdk/go/aws/ec2/pulumiEnums.go @@ -10907,6 +10907,513 @@ func (in *vpcBlockPublicAccessOptionsInternetGatewayBlockModePtr) ToVpcBlockPubl return pulumi.ToOutputWithContext(ctx, in).(VpcBlockPublicAccessOptionsInternetGatewayBlockModePtrOutput) } +type VpcEndpointDnsOptionsSpecificationDnsRecordIpType string + +const ( + VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeIpv4 = VpcEndpointDnsOptionsSpecificationDnsRecordIpType("ipv4") + VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeIpv6 = VpcEndpointDnsOptionsSpecificationDnsRecordIpType("ipv6") + VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeDualstack = VpcEndpointDnsOptionsSpecificationDnsRecordIpType("dualstack") + VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeServiceDefined = VpcEndpointDnsOptionsSpecificationDnsRecordIpType("service-defined") + VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeNotSpecified = VpcEndpointDnsOptionsSpecificationDnsRecordIpType("not-specified") +) + +func (VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationDnsRecordIpType)(nil)).Elem() +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput { + return pulumi.ToOutput(e).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return e.ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(context.Background()) +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return VpcEndpointDnsOptionsSpecificationDnsRecordIpType(e).ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutputWithContext(ctx).ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(ctx) +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput struct{ *pulumi.OutputState } + +func (VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationDnsRecordIpType)(nil)).Elem() +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return o.ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v VpcEndpointDnsOptionsSpecificationDnsRecordIpType) *VpcEndpointDnsOptionsSpecificationDnsRecordIpType { + return &v + }).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e VpcEndpointDnsOptionsSpecificationDnsRecordIpType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput struct{ *pulumi.OutputState } + +func (VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**VpcEndpointDnsOptionsSpecificationDnsRecordIpType)(nil)).Elem() +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) Elem() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput { + return o.ApplyT(func(v *VpcEndpointDnsOptionsSpecificationDnsRecordIpType) VpcEndpointDnsOptionsSpecificationDnsRecordIpType { + if v != nil { + return *v + } + var ret VpcEndpointDnsOptionsSpecificationDnsRecordIpType + return ret + }).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *VpcEndpointDnsOptionsSpecificationDnsRecordIpType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeInput is an input type that accepts values of the VpcEndpointDnsOptionsSpecificationDnsRecordIpType enum +// A concrete instance of `VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeInput` can be one of the following: +// +// VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeIpv4 +// VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeIpv6 +// VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeDualstack +// VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeServiceDefined +// VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeNotSpecified +type VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeInput interface { + pulumi.Input + + ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput + ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutputWithContext(context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput +} + +var vpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrType = reflect.TypeOf((**VpcEndpointDnsOptionsSpecificationDnsRecordIpType)(nil)).Elem() + +type VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrInput interface { + pulumi.Input + + ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput + ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput +} + +type vpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtr string + +func VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtr(v string) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrInput { + return (*vpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtr)(&v) +} + +func (*vpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtr) ElementType() reflect.Type { + return vpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrType +} + +func (in *vpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtr) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return pulumi.ToOutput(in).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) +} + +func (in *vpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtr) ToVpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) +} + +type VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint string + +const ( + VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOnlyInboundResolver = VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("OnlyInboundResolver") + VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointAllResolvers = VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("AllResolvers") + VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointNotSpecified = VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("NotSpecified") +) + +func (VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint)(nil)).Elem() +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput { + return pulumi.ToOutput(e).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput { + return pulumi.ToOutputWithContext(ctx, e).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return e.ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(context.Background()) +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint(e).ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutputWithContext(ctx).ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(ctx) +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput struct{ *pulumi.OutputState } + +func (VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint)(nil)).Elem() +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return o.ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) *VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint { + return &v + }).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput struct{ *pulumi.OutputState } + +func (VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint)(nil)).Elem() +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) Elem() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput { + return o.ApplyT(func(v *VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint { + if v != nil { + return *v + } + var ret VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint + return ret + }).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointInput is an input type that accepts values of the VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint enum +// A concrete instance of `VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointInput` can be one of the following: +// +// VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOnlyInboundResolver +// VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointAllResolvers +// VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointNotSpecified +type VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointInput interface { + pulumi.Input + + ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput + ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutputWithContext(context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput +} + +var vpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrType = reflect.TypeOf((**VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint)(nil)).Elem() + +type VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrInput interface { + pulumi.Input + + ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput + ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput +} + +type vpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtr string + +func VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtr(v string) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrInput { + return (*vpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtr)(&v) +} + +func (*vpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtr) ElementType() reflect.Type { + return vpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrType +} + +func (in *vpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtr) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return pulumi.ToOutput(in).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) +} + +func (in *vpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtr) ToVpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) +} + +type VpcEndpointIpAddressType string + +const ( + VpcEndpointIpAddressTypeIpv4 = VpcEndpointIpAddressType("ipv4") + VpcEndpointIpAddressTypeIpv6 = VpcEndpointIpAddressType("ipv6") + VpcEndpointIpAddressTypeDualstack = VpcEndpointIpAddressType("dualstack") + VpcEndpointIpAddressTypeNotSpecified = VpcEndpointIpAddressType("not-specified") +) + +func (VpcEndpointIpAddressType) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointIpAddressType)(nil)).Elem() +} + +func (e VpcEndpointIpAddressType) ToVpcEndpointIpAddressTypeOutput() VpcEndpointIpAddressTypeOutput { + return pulumi.ToOutput(e).(VpcEndpointIpAddressTypeOutput) +} + +func (e VpcEndpointIpAddressType) ToVpcEndpointIpAddressTypeOutputWithContext(ctx context.Context) VpcEndpointIpAddressTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(VpcEndpointIpAddressTypeOutput) +} + +func (e VpcEndpointIpAddressType) ToVpcEndpointIpAddressTypePtrOutput() VpcEndpointIpAddressTypePtrOutput { + return e.ToVpcEndpointIpAddressTypePtrOutputWithContext(context.Background()) +} + +func (e VpcEndpointIpAddressType) ToVpcEndpointIpAddressTypePtrOutputWithContext(ctx context.Context) VpcEndpointIpAddressTypePtrOutput { + return VpcEndpointIpAddressType(e).ToVpcEndpointIpAddressTypeOutputWithContext(ctx).ToVpcEndpointIpAddressTypePtrOutputWithContext(ctx) +} + +func (e VpcEndpointIpAddressType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e VpcEndpointIpAddressType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e VpcEndpointIpAddressType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e VpcEndpointIpAddressType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type VpcEndpointIpAddressTypeOutput struct{ *pulumi.OutputState } + +func (VpcEndpointIpAddressTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointIpAddressType)(nil)).Elem() +} + +func (o VpcEndpointIpAddressTypeOutput) ToVpcEndpointIpAddressTypeOutput() VpcEndpointIpAddressTypeOutput { + return o +} + +func (o VpcEndpointIpAddressTypeOutput) ToVpcEndpointIpAddressTypeOutputWithContext(ctx context.Context) VpcEndpointIpAddressTypeOutput { + return o +} + +func (o VpcEndpointIpAddressTypeOutput) ToVpcEndpointIpAddressTypePtrOutput() VpcEndpointIpAddressTypePtrOutput { + return o.ToVpcEndpointIpAddressTypePtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointIpAddressTypeOutput) ToVpcEndpointIpAddressTypePtrOutputWithContext(ctx context.Context) VpcEndpointIpAddressTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v VpcEndpointIpAddressType) *VpcEndpointIpAddressType { + return &v + }).(VpcEndpointIpAddressTypePtrOutput) +} + +func (o VpcEndpointIpAddressTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o VpcEndpointIpAddressTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e VpcEndpointIpAddressType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o VpcEndpointIpAddressTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointIpAddressTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e VpcEndpointIpAddressType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type VpcEndpointIpAddressTypePtrOutput struct{ *pulumi.OutputState } + +func (VpcEndpointIpAddressTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**VpcEndpointIpAddressType)(nil)).Elem() +} + +func (o VpcEndpointIpAddressTypePtrOutput) ToVpcEndpointIpAddressTypePtrOutput() VpcEndpointIpAddressTypePtrOutput { + return o +} + +func (o VpcEndpointIpAddressTypePtrOutput) ToVpcEndpointIpAddressTypePtrOutputWithContext(ctx context.Context) VpcEndpointIpAddressTypePtrOutput { + return o +} + +func (o VpcEndpointIpAddressTypePtrOutput) Elem() VpcEndpointIpAddressTypeOutput { + return o.ApplyT(func(v *VpcEndpointIpAddressType) VpcEndpointIpAddressType { + if v != nil { + return *v + } + var ret VpcEndpointIpAddressType + return ret + }).(VpcEndpointIpAddressTypeOutput) +} + +func (o VpcEndpointIpAddressTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointIpAddressTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *VpcEndpointIpAddressType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// VpcEndpointIpAddressTypeInput is an input type that accepts values of the VpcEndpointIpAddressType enum +// A concrete instance of `VpcEndpointIpAddressTypeInput` can be one of the following: +// +// VpcEndpointIpAddressTypeIpv4 +// VpcEndpointIpAddressTypeIpv6 +// VpcEndpointIpAddressTypeDualstack +// VpcEndpointIpAddressTypeNotSpecified +type VpcEndpointIpAddressTypeInput interface { + pulumi.Input + + ToVpcEndpointIpAddressTypeOutput() VpcEndpointIpAddressTypeOutput + ToVpcEndpointIpAddressTypeOutputWithContext(context.Context) VpcEndpointIpAddressTypeOutput +} + +var vpcEndpointIpAddressTypePtrType = reflect.TypeOf((**VpcEndpointIpAddressType)(nil)).Elem() + +type VpcEndpointIpAddressTypePtrInput interface { + pulumi.Input + + ToVpcEndpointIpAddressTypePtrOutput() VpcEndpointIpAddressTypePtrOutput + ToVpcEndpointIpAddressTypePtrOutputWithContext(context.Context) VpcEndpointIpAddressTypePtrOutput +} + +type vpcEndpointIpAddressTypePtr string + +func VpcEndpointIpAddressTypePtr(v string) VpcEndpointIpAddressTypePtrInput { + return (*vpcEndpointIpAddressTypePtr)(&v) +} + +func (*vpcEndpointIpAddressTypePtr) ElementType() reflect.Type { + return vpcEndpointIpAddressTypePtrType +} + +func (in *vpcEndpointIpAddressTypePtr) ToVpcEndpointIpAddressTypePtrOutput() VpcEndpointIpAddressTypePtrOutput { + return pulumi.ToOutput(in).(VpcEndpointIpAddressTypePtrOutput) +} + +func (in *vpcEndpointIpAddressTypePtr) ToVpcEndpointIpAddressTypePtrOutputWithContext(ctx context.Context) VpcEndpointIpAddressTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(VpcEndpointIpAddressTypePtrOutput) +} + // The type of endpoint. // // Default: Gateway @@ -10916,6 +11423,8 @@ const ( VpcEndpointTypeInterface = VpcEndpointType("Interface") VpcEndpointTypeGateway = VpcEndpointType("Gateway") VpcEndpointTypeGatewayLoadBalancer = VpcEndpointType("GatewayLoadBalancer") + VpcEndpointTypeServiceNetwork = VpcEndpointType("ServiceNetwork") + VpcEndpointTypeResource = VpcEndpointType("Resource") ) func (VpcEndpointType) ElementType() reflect.Type { @@ -11043,6 +11552,8 @@ func (o VpcEndpointTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Conte // VpcEndpointTypeInterface // VpcEndpointTypeGateway // VpcEndpointTypeGatewayLoadBalancer +// VpcEndpointTypeServiceNetwork +// VpcEndpointTypeResource type VpcEndpointTypeInput interface { pulumi.Input @@ -12557,6 +13068,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*VpcBlockPublicAccessExclusionInternetGatewayExclusionModePtrInput)(nil)).Elem(), VpcBlockPublicAccessExclusionInternetGatewayExclusionMode("allow-bidirectional")) pulumi.RegisterInputType(reflect.TypeOf((*VpcBlockPublicAccessOptionsInternetGatewayBlockModeInput)(nil)).Elem(), VpcBlockPublicAccessOptionsInternetGatewayBlockMode("block-bidirectional")) pulumi.RegisterInputType(reflect.TypeOf((*VpcBlockPublicAccessOptionsInternetGatewayBlockModePtrInput)(nil)).Elem(), VpcBlockPublicAccessOptionsInternetGatewayBlockMode("block-bidirectional")) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeInput)(nil)).Elem(), VpcEndpointDnsOptionsSpecificationDnsRecordIpType("ipv4")) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrInput)(nil)).Elem(), VpcEndpointDnsOptionsSpecificationDnsRecordIpType("ipv4")) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointInput)(nil)).Elem(), VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("OnlyInboundResolver")) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrInput)(nil)).Elem(), VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint("OnlyInboundResolver")) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointIpAddressTypeInput)(nil)).Elem(), VpcEndpointIpAddressType("ipv4")) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointIpAddressTypePtrInput)(nil)).Elem(), VpcEndpointIpAddressType("ipv4")) pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointTypeInput)(nil)).Elem(), VpcEndpointType("Interface")) pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointTypePtrInput)(nil)).Elem(), VpcEndpointType("Interface")) pulumi.RegisterInputType(reflect.TypeOf((*VpnConnectionCloudwatchLogOptionsSpecificationLogOutputFormatInput)(nil)).Elem(), VpnConnectionCloudwatchLogOptionsSpecificationLogOutputFormat("json")) @@ -12714,6 +13231,12 @@ func init() { pulumi.RegisterOutputType(VpcBlockPublicAccessExclusionInternetGatewayExclusionModePtrOutput{}) pulumi.RegisterOutputType(VpcBlockPublicAccessOptionsInternetGatewayBlockModeOutput{}) pulumi.RegisterOutputType(VpcBlockPublicAccessOptionsInternetGatewayBlockModePtrOutput{}) + pulumi.RegisterOutputType(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypeOutput{}) + pulumi.RegisterOutputType(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput{}) + pulumi.RegisterOutputType(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointOutput{}) + pulumi.RegisterOutputType(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput{}) + pulumi.RegisterOutputType(VpcEndpointIpAddressTypeOutput{}) + pulumi.RegisterOutputType(VpcEndpointIpAddressTypePtrOutput{}) pulumi.RegisterOutputType(VpcEndpointTypeOutput{}) pulumi.RegisterOutputType(VpcEndpointTypePtrOutput{}) pulumi.RegisterOutputType(VpnConnectionCloudwatchLogOptionsSpecificationLogOutputFormatOutput{}) diff --git a/sdk/go/aws/ec2/pulumiTypes.go b/sdk/go/aws/ec2/pulumiTypes.go index 0179c1ac13..c08533d0fc 100644 --- a/sdk/go/aws/ec2/pulumiTypes.go +++ b/sdk/go/aws/ec2/pulumiTypes.go @@ -10140,6 +10140,7 @@ func (o LaunchTemplateConnectionTrackingSpecificationPtrOutput) UdpTimeout() pul } type LaunchTemplateCpu struct { + // The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. References []LaunchTemplateReference `pulumi:"references"` } @@ -10155,6 +10156,7 @@ type LaunchTemplateCpuInput interface { } type LaunchTemplateCpuArgs struct { + // The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. References LaunchTemplateReferenceArrayInput `pulumi:"references"` } @@ -10235,6 +10237,7 @@ func (o LaunchTemplateCpuOutput) ToLaunchTemplateCpuPtrOutputWithContext(ctx con }).(LaunchTemplateCpuPtrOutput) } +// The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. func (o LaunchTemplateCpuOutput) References() LaunchTemplateReferenceArrayOutput { return o.ApplyT(func(v LaunchTemplateCpu) []LaunchTemplateReference { return v.References }).(LaunchTemplateReferenceArrayOutput) } @@ -10263,6 +10266,7 @@ func (o LaunchTemplateCpuPtrOutput) Elem() LaunchTemplateCpuOutput { }).(LaunchTemplateCpuOutput) } +// The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. func (o LaunchTemplateCpuPtrOutput) References() LaunchTemplateReferenceArrayOutput { return o.ApplyT(func(v *LaunchTemplateCpu) []LaunchTemplateReference { if v == nil { @@ -10683,7 +10687,8 @@ type LaunchTemplateData struct { // The monitoring for the instance. Monitoring *LaunchTemplateMonitoring `pulumi:"monitoring"` // The network interfaces for the instance. - NetworkInterfaces []LaunchTemplateNetworkInterface `pulumi:"networkInterfaces"` + NetworkInterfaces []LaunchTemplateNetworkInterface `pulumi:"networkInterfaces"` + NetworkPerformanceOptions interface{} `pulumi:"networkPerformanceOptions"` // The placement for the instance. Placement *LaunchTemplatePlacement `pulumi:"placement"` // The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries 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*. @@ -10792,7 +10797,8 @@ type LaunchTemplateDataArgs struct { // The monitoring for the instance. Monitoring LaunchTemplateMonitoringPtrInput `pulumi:"monitoring"` // The network interfaces for the instance. - NetworkInterfaces LaunchTemplateNetworkInterfaceArrayInput `pulumi:"networkInterfaces"` + NetworkInterfaces LaunchTemplateNetworkInterfaceArrayInput `pulumi:"networkInterfaces"` + NetworkPerformanceOptions pulumi.Input `pulumi:"networkPerformanceOptions"` // The placement for the instance. Placement LaunchTemplatePlacementPtrInput `pulumi:"placement"` // The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries 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*. @@ -11001,6 +11007,10 @@ func (o LaunchTemplateDataOutput) NetworkInterfaces() LaunchTemplateNetworkInter return o.ApplyT(func(v LaunchTemplateData) []LaunchTemplateNetworkInterface { return v.NetworkInterfaces }).(LaunchTemplateNetworkInterfaceArrayOutput) } +func (o LaunchTemplateDataOutput) NetworkPerformanceOptions() pulumi.AnyOutput { + return o.ApplyT(func(v LaunchTemplateData) interface{} { return v.NetworkPerformanceOptions }).(pulumi.AnyOutput) +} + // The placement for the instance. func (o LaunchTemplateDataOutput) Placement() LaunchTemplatePlacementPtrOutput { return o.ApplyT(func(v LaunchTemplateData) *LaunchTemplatePlacement { return v.Placement }).(LaunchTemplatePlacementPtrOutput) @@ -31109,6 +31119,158 @@ type VpcBlockPublicAccessExclusionTag struct { Value string `pulumi:"value"` } +type VpcEndpointDnsOptionsSpecification struct { + DnsRecordIpType *VpcEndpointDnsOptionsSpecificationDnsRecordIpType `pulumi:"dnsRecordIpType"` + PrivateDnsOnlyForInboundResolverEndpoint *VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint `pulumi:"privateDnsOnlyForInboundResolverEndpoint"` +} + +// VpcEndpointDnsOptionsSpecificationInput is an input type that accepts VpcEndpointDnsOptionsSpecificationArgs and VpcEndpointDnsOptionsSpecificationOutput values. +// You can construct a concrete instance of `VpcEndpointDnsOptionsSpecificationInput` via: +// +// VpcEndpointDnsOptionsSpecificationArgs{...} +type VpcEndpointDnsOptionsSpecificationInput interface { + pulumi.Input + + ToVpcEndpointDnsOptionsSpecificationOutput() VpcEndpointDnsOptionsSpecificationOutput + ToVpcEndpointDnsOptionsSpecificationOutputWithContext(context.Context) VpcEndpointDnsOptionsSpecificationOutput +} + +type VpcEndpointDnsOptionsSpecificationArgs struct { + DnsRecordIpType VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrInput `pulumi:"dnsRecordIpType"` + PrivateDnsOnlyForInboundResolverEndpoint VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrInput `pulumi:"privateDnsOnlyForInboundResolverEndpoint"` +} + +func (VpcEndpointDnsOptionsSpecificationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointDnsOptionsSpecification)(nil)).Elem() +} + +func (i VpcEndpointDnsOptionsSpecificationArgs) ToVpcEndpointDnsOptionsSpecificationOutput() VpcEndpointDnsOptionsSpecificationOutput { + return i.ToVpcEndpointDnsOptionsSpecificationOutputWithContext(context.Background()) +} + +func (i VpcEndpointDnsOptionsSpecificationArgs) ToVpcEndpointDnsOptionsSpecificationOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationOutput { + return pulumi.ToOutputWithContext(ctx, i).(VpcEndpointDnsOptionsSpecificationOutput) +} + +func (i VpcEndpointDnsOptionsSpecificationArgs) ToVpcEndpointDnsOptionsSpecificationPtrOutput() VpcEndpointDnsOptionsSpecificationPtrOutput { + return i.ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(context.Background()) +} + +func (i VpcEndpointDnsOptionsSpecificationArgs) ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(VpcEndpointDnsOptionsSpecificationOutput).ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(ctx) +} + +// VpcEndpointDnsOptionsSpecificationPtrInput is an input type that accepts VpcEndpointDnsOptionsSpecificationArgs, VpcEndpointDnsOptionsSpecificationPtr and VpcEndpointDnsOptionsSpecificationPtrOutput values. +// You can construct a concrete instance of `VpcEndpointDnsOptionsSpecificationPtrInput` via: +// +// VpcEndpointDnsOptionsSpecificationArgs{...} +// +// or: +// +// nil +type VpcEndpointDnsOptionsSpecificationPtrInput interface { + pulumi.Input + + ToVpcEndpointDnsOptionsSpecificationPtrOutput() VpcEndpointDnsOptionsSpecificationPtrOutput + ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(context.Context) VpcEndpointDnsOptionsSpecificationPtrOutput +} + +type vpcEndpointDnsOptionsSpecificationPtrType VpcEndpointDnsOptionsSpecificationArgs + +func VpcEndpointDnsOptionsSpecificationPtr(v *VpcEndpointDnsOptionsSpecificationArgs) VpcEndpointDnsOptionsSpecificationPtrInput { + return (*vpcEndpointDnsOptionsSpecificationPtrType)(v) +} + +func (*vpcEndpointDnsOptionsSpecificationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**VpcEndpointDnsOptionsSpecification)(nil)).Elem() +} + +func (i *vpcEndpointDnsOptionsSpecificationPtrType) ToVpcEndpointDnsOptionsSpecificationPtrOutput() VpcEndpointDnsOptionsSpecificationPtrOutput { + return i.ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(context.Background()) +} + +func (i *vpcEndpointDnsOptionsSpecificationPtrType) ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(VpcEndpointDnsOptionsSpecificationPtrOutput) +} + +type VpcEndpointDnsOptionsSpecificationOutput struct{ *pulumi.OutputState } + +func (VpcEndpointDnsOptionsSpecificationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*VpcEndpointDnsOptionsSpecification)(nil)).Elem() +} + +func (o VpcEndpointDnsOptionsSpecificationOutput) ToVpcEndpointDnsOptionsSpecificationOutput() VpcEndpointDnsOptionsSpecificationOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationOutput) ToVpcEndpointDnsOptionsSpecificationOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationOutput) ToVpcEndpointDnsOptionsSpecificationPtrOutput() VpcEndpointDnsOptionsSpecificationPtrOutput { + return o.ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(context.Background()) +} + +func (o VpcEndpointDnsOptionsSpecificationOutput) ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v VpcEndpointDnsOptionsSpecification) *VpcEndpointDnsOptionsSpecification { + return &v + }).(VpcEndpointDnsOptionsSpecificationPtrOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationOutput) DnsRecordIpType() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return o.ApplyT(func(v VpcEndpointDnsOptionsSpecification) *VpcEndpointDnsOptionsSpecificationDnsRecordIpType { + return v.DnsRecordIpType + }).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationOutput) PrivateDnsOnlyForInboundResolverEndpoint() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return o.ApplyT(func(v VpcEndpointDnsOptionsSpecification) *VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint { + return v.PrivateDnsOnlyForInboundResolverEndpoint + }).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) +} + +type VpcEndpointDnsOptionsSpecificationPtrOutput struct{ *pulumi.OutputState } + +func (VpcEndpointDnsOptionsSpecificationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**VpcEndpointDnsOptionsSpecification)(nil)).Elem() +} + +func (o VpcEndpointDnsOptionsSpecificationPtrOutput) ToVpcEndpointDnsOptionsSpecificationPtrOutput() VpcEndpointDnsOptionsSpecificationPtrOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationPtrOutput) ToVpcEndpointDnsOptionsSpecificationPtrOutputWithContext(ctx context.Context) VpcEndpointDnsOptionsSpecificationPtrOutput { + return o +} + +func (o VpcEndpointDnsOptionsSpecificationPtrOutput) Elem() VpcEndpointDnsOptionsSpecificationOutput { + return o.ApplyT(func(v *VpcEndpointDnsOptionsSpecification) VpcEndpointDnsOptionsSpecification { + if v != nil { + return *v + } + var ret VpcEndpointDnsOptionsSpecification + return ret + }).(VpcEndpointDnsOptionsSpecificationOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationPtrOutput) DnsRecordIpType() VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput { + return o.ApplyT(func(v *VpcEndpointDnsOptionsSpecification) *VpcEndpointDnsOptionsSpecificationDnsRecordIpType { + if v == nil { + return nil + } + return v.DnsRecordIpType + }).(VpcEndpointDnsOptionsSpecificationDnsRecordIpTypePtrOutput) +} + +func (o VpcEndpointDnsOptionsSpecificationPtrOutput) PrivateDnsOnlyForInboundResolverEndpoint() VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput { + return o.ApplyT(func(v *VpcEndpointDnsOptionsSpecification) *VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint { + if v == nil { + return nil + } + return v.PrivateDnsOnlyForInboundResolverEndpoint + }).(VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpointPtrOutput) +} + // A key-value pair to associate with a resource. type VpcPeeringConnectionTag struct { // 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 -. @@ -32908,6 +33070,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*VerifiedAccessTrustProviderDeviceOptionsPtrInput)(nil)).Elem(), VerifiedAccessTrustProviderDeviceOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*VerifiedAccessTrustProviderOidcOptionsInput)(nil)).Elem(), VerifiedAccessTrustProviderOidcOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*VerifiedAccessTrustProviderOidcOptionsPtrInput)(nil)).Elem(), VerifiedAccessTrustProviderOidcOptionsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationInput)(nil)).Elem(), VpcEndpointDnsOptionsSpecificationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*VpcEndpointDnsOptionsSpecificationPtrInput)(nil)).Elem(), VpcEndpointDnsOptionsSpecificationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*VpnConnectionCloudwatchLogOptionsSpecificationInput)(nil)).Elem(), VpnConnectionCloudwatchLogOptionsSpecificationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*VpnConnectionCloudwatchLogOptionsSpecificationPtrInput)(nil)).Elem(), VpnConnectionCloudwatchLogOptionsSpecificationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*VpnConnectionIkeVersionsRequestListValueInput)(nil)).Elem(), VpnConnectionIkeVersionsRequestListValueArgs{}) @@ -33276,6 +33440,8 @@ func init() { pulumi.RegisterOutputType(VerifiedAccessTrustProviderDeviceOptionsPtrOutput{}) pulumi.RegisterOutputType(VerifiedAccessTrustProviderOidcOptionsOutput{}) pulumi.RegisterOutputType(VerifiedAccessTrustProviderOidcOptionsPtrOutput{}) + pulumi.RegisterOutputType(VpcEndpointDnsOptionsSpecificationOutput{}) + pulumi.RegisterOutputType(VpcEndpointDnsOptionsSpecificationPtrOutput{}) pulumi.RegisterOutputType(VpnConnectionCloudwatchLogOptionsSpecificationOutput{}) pulumi.RegisterOutputType(VpnConnectionCloudwatchLogOptionsSpecificationPtrOutput{}) pulumi.RegisterOutputType(VpnConnectionIkeVersionsRequestListValueOutput{}) diff --git a/sdk/go/aws/ec2/vpcEndpoint.go b/sdk/go/aws/ec2/vpcEndpoint.go index 50db0b50d5..0b4d514b0b 100644 --- a/sdk/go/aws/ec2/vpcEndpoint.go +++ b/sdk/go/aws/ec2/vpcEndpoint.go @@ -33,7 +33,9 @@ type VpcEndpoint struct { // ["Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com", "Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3-us-east-1a.ec2.us-east-1.vpce.amazonaws.com", "Z1C12344VYDITB0:ec2.us-east-1.amazonaws.com"] // // If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change. - DnsEntries pulumi.StringArrayOutput `pulumi:"dnsEntries"` + DnsEntries pulumi.StringArrayOutput `pulumi:"dnsEntries"` + DnsOptions VpcEndpointDnsOptionsSpecificationPtrOutput `pulumi:"dnsOptions"` + IpAddressType VpcEndpointIpAddressTypePtrOutput `pulumi:"ipAddressType"` // (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. NetworkInterfaceIds pulumi.StringArrayOutput `pulumi:"networkInterfaceIds"` // An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints. @@ -46,13 +48,15 @@ type VpcEndpoint struct { // To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``. // This property is supported only for interface endpoints. // Default: ``false`` - PrivateDnsEnabled pulumi.BoolPtrOutput `pulumi:"privateDnsEnabled"` + PrivateDnsEnabled pulumi.BoolPtrOutput `pulumi:"privateDnsEnabled"` + ResourceConfigurationArn pulumi.StringPtrOutput `pulumi:"resourceConfigurationArn"` // The IDs of the route tables. Routing is supported only for gateway endpoints. RouteTableIds pulumi.StringArrayOutput `pulumi:"routeTableIds"` // The IDs of the security groups to associate with the endpoint network interfaces. If this parameter is not specified, we use the default security group for the VPC. Security groups are supported only for interface endpoints. SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` // The name of the endpoint service. - ServiceName pulumi.StringOutput `pulumi:"serviceName"` + ServiceName pulumi.StringPtrOutput `pulumi:"serviceName"` + ServiceNetworkArn pulumi.StringPtrOutput `pulumi:"serviceNetworkArn"` // The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"` // The type of endpoint. @@ -69,14 +73,13 @@ func NewVpcEndpoint(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } - if args.ServiceName == nil { - return nil, errors.New("invalid value for required argument 'ServiceName'") - } if args.VpcId == nil { return nil, errors.New("invalid value for required argument 'VpcId'") } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "resourceConfigurationArn", "serviceName", + "serviceNetworkArn", "vpcEndpointType", "vpcId", }) @@ -114,6 +117,8 @@ func (VpcEndpointState) ElementType() reflect.Type { } type vpcEndpointArgs struct { + DnsOptions *VpcEndpointDnsOptionsSpecification `pulumi:"dnsOptions"` + IpAddressType *VpcEndpointIpAddressType `pulumi:"ipAddressType"` // An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints. // For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section: // ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ "Version":"2012-10-17", "Statement": [{ "Effect":"Allow", "Principal":"*", "Action":["logs:Describe*","logs:Get*","logs:List*","logs:FilterLogEvents"], "Resource":"*" }] }'`` @@ -124,13 +129,15 @@ type vpcEndpointArgs struct { // To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``. // This property is supported only for interface endpoints. // Default: ``false`` - PrivateDnsEnabled *bool `pulumi:"privateDnsEnabled"` + PrivateDnsEnabled *bool `pulumi:"privateDnsEnabled"` + ResourceConfigurationArn *string `pulumi:"resourceConfigurationArn"` // The IDs of the route tables. Routing is supported only for gateway endpoints. RouteTableIds []string `pulumi:"routeTableIds"` // The IDs of the security groups to associate with the endpoint network interfaces. If this parameter is not specified, we use the default security group for the VPC. Security groups are supported only for interface endpoints. SecurityGroupIds []string `pulumi:"securityGroupIds"` // The name of the endpoint service. - ServiceName string `pulumi:"serviceName"` + ServiceName *string `pulumi:"serviceName"` + ServiceNetworkArn *string `pulumi:"serviceNetworkArn"` // The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. SubnetIds []string `pulumi:"subnetIds"` // The type of endpoint. @@ -142,6 +149,8 @@ type vpcEndpointArgs struct { // The set of arguments for constructing a VpcEndpoint resource. type VpcEndpointArgs struct { + DnsOptions VpcEndpointDnsOptionsSpecificationPtrInput + IpAddressType VpcEndpointIpAddressTypePtrInput // An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints. // For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section: // ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ "Version":"2012-10-17", "Statement": [{ "Effect":"Allow", "Principal":"*", "Action":["logs:Describe*","logs:Get*","logs:List*","logs:FilterLogEvents"], "Resource":"*" }] }'`` @@ -152,13 +161,15 @@ type VpcEndpointArgs struct { // To use a private hosted zone, you must set the following VPC attributes to ``true``: ``enableDnsHostnames`` and ``enableDnsSupport``. // This property is supported only for interface endpoints. // Default: ``false`` - PrivateDnsEnabled pulumi.BoolPtrInput + PrivateDnsEnabled pulumi.BoolPtrInput + ResourceConfigurationArn pulumi.StringPtrInput // The IDs of the route tables. Routing is supported only for gateway endpoints. RouteTableIds pulumi.StringArrayInput // The IDs of the security groups to associate with the endpoint network interfaces. If this parameter is not specified, we use the default security group for the VPC. Security groups are supported only for interface endpoints. SecurityGroupIds pulumi.StringArrayInput // The name of the endpoint service. - ServiceName pulumi.StringInput + ServiceName pulumi.StringPtrInput + ServiceNetworkArn pulumi.StringPtrInput // The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. SubnetIds pulumi.StringArrayInput // The type of endpoint. @@ -226,6 +237,14 @@ func (o VpcEndpointOutput) DnsEntries() pulumi.StringArrayOutput { return o.ApplyT(func(v *VpcEndpoint) pulumi.StringArrayOutput { return v.DnsEntries }).(pulumi.StringArrayOutput) } +func (o VpcEndpointOutput) DnsOptions() VpcEndpointDnsOptionsSpecificationPtrOutput { + return o.ApplyT(func(v *VpcEndpoint) VpcEndpointDnsOptionsSpecificationPtrOutput { return v.DnsOptions }).(VpcEndpointDnsOptionsSpecificationPtrOutput) +} + +func (o VpcEndpointOutput) IpAddressType() VpcEndpointIpAddressTypePtrOutput { + return o.ApplyT(func(v *VpcEndpoint) VpcEndpointIpAddressTypePtrOutput { return v.IpAddressType }).(VpcEndpointIpAddressTypePtrOutput) +} + // (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. func (o VpcEndpointOutput) NetworkInterfaceIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *VpcEndpoint) pulumi.StringArrayOutput { return v.NetworkInterfaceIds }).(pulumi.StringArrayOutput) @@ -250,6 +269,10 @@ func (o VpcEndpointOutput) PrivateDnsEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *VpcEndpoint) pulumi.BoolPtrOutput { return v.PrivateDnsEnabled }).(pulumi.BoolPtrOutput) } +func (o VpcEndpointOutput) ResourceConfigurationArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *VpcEndpoint) pulumi.StringPtrOutput { return v.ResourceConfigurationArn }).(pulumi.StringPtrOutput) +} + // The IDs of the route tables. Routing is supported only for gateway endpoints. func (o VpcEndpointOutput) RouteTableIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *VpcEndpoint) pulumi.StringArrayOutput { return v.RouteTableIds }).(pulumi.StringArrayOutput) @@ -261,8 +284,12 @@ func (o VpcEndpointOutput) SecurityGroupIds() pulumi.StringArrayOutput { } // The name of the endpoint service. -func (o VpcEndpointOutput) ServiceName() pulumi.StringOutput { - return o.ApplyT(func(v *VpcEndpoint) pulumi.StringOutput { return v.ServiceName }).(pulumi.StringOutput) +func (o VpcEndpointOutput) ServiceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *VpcEndpoint) pulumi.StringPtrOutput { return v.ServiceName }).(pulumi.StringPtrOutput) +} + +func (o VpcEndpointOutput) ServiceNetworkArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *VpcEndpoint) pulumi.StringPtrOutput { return v.ServiceNetworkArn }).(pulumi.StringPtrOutput) } // The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. diff --git a/sdk/go/aws/ecs/getService.go b/sdk/go/aws/ecs/getService.go index 8eb20f29d3..915449c788 100644 --- a/sdk/go/aws/ecs/getService.go +++ b/sdk/go/aws/ecs/getService.go @@ -35,8 +35,7 @@ type LookupServiceArgs struct { type LookupServiceResult struct { // Indicates whether to use Availability Zone rebalancing for the service. - // - // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. AvailabilityZoneRebalancing *ServiceAvailabilityZoneRebalancing `pulumi:"availabilityZoneRebalancing"` // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -53,9 +52,8 @@ type LookupServiceResult struct { EnableEcsManagedTags *bool `pulumi:"enableEcsManagedTags"` // Determines whether the execute command functionality is turned on for the service. If ``true``, the execute command functionality is turned on for all containers in tasks as part of the service. EnableExecuteCommand *bool `pulumi:"enableExecuteCommand"` - // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - // If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - // If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + // If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. HealthCheckGracePeriodSeconds *int `pulumi:"healthCheckGracePeriodSeconds"` // A list of load balancer objects to associate with the service. If you specify the ``Role`` property, ``LoadBalancers`` must be specified as well. For information about the number of load balancers that you can specify per service, see [Service Load Balancing](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html) in the *Amazon Elastic Container Service Developer Guide*. LoadBalancers []ServiceLoadBalancer `pulumi:"loadBalancers"` @@ -132,7 +130,7 @@ func (o LookupServiceResultOutput) ToLookupServiceResultOutputWithContext(ctx co // Indicates whether to use Availability Zone rebalancing for the service. // -// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . +// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. func (o LookupServiceResultOutput) AvailabilityZoneRebalancing() ServiceAvailabilityZoneRebalancingPtrOutput { return o.ApplyT(func(v LookupServiceResult) *ServiceAvailabilityZoneRebalancing { return v.AvailabilityZoneRebalancing }).(ServiceAvailabilityZoneRebalancingPtrOutput) } @@ -170,10 +168,9 @@ func (o LookupServiceResultOutput) EnableExecuteCommand() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupServiceResult) *bool { return v.EnableExecuteCommand }).(pulumi.BoolPtrOutput) } -// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of “0“ is used. +// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of “0“ is used. If you don't use any of the health checks, then “healthCheckGracePeriodSeconds“ is unused. // -// If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). -// If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. +// If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. func (o LookupServiceResultOutput) HealthCheckGracePeriodSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupServiceResult) *int { return v.HealthCheckGracePeriodSeconds }).(pulumi.IntPtrOutput) } diff --git a/sdk/go/aws/ecs/pulumiEnums.go b/sdk/go/aws/ecs/pulumiEnums.go index cd02344845..3844a9aeb3 100644 --- a/sdk/go/aws/ecs/pulumiEnums.go +++ b/sdk/go/aws/ecs/pulumiEnums.go @@ -690,7 +690,7 @@ const ( // Indicates whether to use Availability Zone rebalancing for the service. // -// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . +// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. type ServiceAvailabilityZoneRebalancing string const ( @@ -856,7 +856,7 @@ func (in *serviceAvailabilityZoneRebalancingPtr) ToServiceAvailabilityZoneRebala return pulumi.ToOutputWithContext(ctx, in).(ServiceAvailabilityZoneRebalancingPtrOutput) } -// Whether the task's elastic network interface receives a public IP address. The default value is “DISABLED“. +// Whether the task's elastic network interface receives a public IP address. The default value is “ENABLED“. type ServiceAwsVpcConfigurationAssignPublicIp string const ( diff --git a/sdk/go/aws/ecs/pulumiTypes.go b/sdk/go/aws/ecs/pulumiTypes.go index 789d5a804a..f54041d685 100644 --- a/sdk/go/aws/ecs/pulumiTypes.go +++ b/sdk/go/aws/ecs/pulumiTypes.go @@ -1741,7 +1741,7 @@ type ClusterTag struct { // An object representing the networking details for a task or service. For example “awsVpcConfiguration={subnets=["subnet-12344321"],securityGroups=["sg-12344321"]}“. type ServiceAwsVpcConfiguration struct { - // Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + // Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. AssignPublicIp *ServiceAwsVpcConfigurationAssignPublicIp `pulumi:"assignPublicIp"` // The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration``. // All specified security groups must be from the same VPC. @@ -1764,7 +1764,7 @@ type ServiceAwsVpcConfigurationInput interface { // An object representing the networking details for a task or service. For example “awsVpcConfiguration={subnets=["subnet-12344321"],securityGroups=["sg-12344321"]}“. type ServiceAwsVpcConfigurationArgs struct { - // Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + // Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. AssignPublicIp ServiceAwsVpcConfigurationAssignPublicIpPtrInput `pulumi:"assignPublicIp"` // The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration``. // All specified security groups must be from the same VPC. @@ -1852,7 +1852,7 @@ func (o ServiceAwsVpcConfigurationOutput) ToServiceAwsVpcConfigurationPtrOutputW }).(ServiceAwsVpcConfigurationPtrOutput) } -// Whether the task's elastic network interface receives a public IP address. The default value is “DISABLED“. +// Whether the task's elastic network interface receives a public IP address. The default value is “ENABLED“. func (o ServiceAwsVpcConfigurationOutput) AssignPublicIp() ServiceAwsVpcConfigurationAssignPublicIpPtrOutput { return o.ApplyT(func(v ServiceAwsVpcConfiguration) *ServiceAwsVpcConfigurationAssignPublicIp { return v.AssignPublicIp }).(ServiceAwsVpcConfigurationAssignPublicIpPtrOutput) } @@ -1895,7 +1895,7 @@ func (o ServiceAwsVpcConfigurationPtrOutput) Elem() ServiceAwsVpcConfigurationOu }).(ServiceAwsVpcConfigurationOutput) } -// Whether the task's elastic network interface receives a public IP address. The default value is “DISABLED“. +// Whether the task's elastic network interface receives a public IP address. The default value is “ENABLED“. func (o ServiceAwsVpcConfigurationPtrOutput) AssignPublicIp() ServiceAwsVpcConfigurationAssignPublicIpPtrOutput { return o.ApplyT(func(v *ServiceAwsVpcConfiguration) *ServiceAwsVpcConfigurationAssignPublicIp { if v == nil { @@ -3563,7 +3563,7 @@ func (o ServiceDeploymentConfigurationPtrOutput) MinimumHealthyPercent() pulumi. }).(pulumi.IntPtrOutput) } -// The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. +// The deployment controller to use for the service. type ServiceDeploymentController struct { // The deployment controller type to use. There are three deployment controller types available: // + ECS The rolling update (ECS) deployment type involves replacing the current running version of the container with the latest version. The number of containers Amazon ECS adds or removes from the service during a rolling update is controlled by adjusting the minimum and maximum number of healthy tasks allowed during a service deployment, as specified in the DeploymentConfiguration. + CODE_DEPLOY The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment model powered by , which allows you to verify a new deployment of a service before sending production traffic to it. + EXTERNAL The external (EXTERNAL) deployment type enables you to use any third-party deployment controller for full control over the deployment process for an Amazon ECS service. @@ -3581,7 +3581,7 @@ type ServiceDeploymentControllerInput interface { ToServiceDeploymentControllerOutputWithContext(context.Context) ServiceDeploymentControllerOutput } -// The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. +// The deployment controller to use for the service. type ServiceDeploymentControllerArgs struct { // The deployment controller type to use. There are three deployment controller types available: // + ECS The rolling update (ECS) deployment type involves replacing the current running version of the container with the latest version. The number of containers Amazon ECS adds or removes from the service during a rolling update is controlled by adjusting the minimum and maximum number of healthy tasks allowed during a service deployment, as specified in the DeploymentConfiguration. + CODE_DEPLOY The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment model powered by , which allows you to verify a new deployment of a service before sending production traffic to it. + EXTERNAL The external (EXTERNAL) deployment type enables you to use any third-party deployment controller for full control over the deployment process for an Amazon ECS service. @@ -3641,7 +3641,7 @@ func (i *serviceDeploymentControllerPtrType) ToServiceDeploymentControllerPtrOut return pulumi.ToOutputWithContext(ctx, i).(ServiceDeploymentControllerPtrOutput) } -// The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. +// The deployment controller to use for the service. type ServiceDeploymentControllerOutput struct{ *pulumi.OutputState } func (ServiceDeploymentControllerOutput) ElementType() reflect.Type { @@ -5741,10 +5741,12 @@ func (o ServiceVolumeConfigurationArrayOutput) Index(i pulumi.IntInput) ServiceV }).(ServiceVolumeConfigurationOutput) } +// The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. type ServiceVpcLatticeConfiguration struct { - // The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + // The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. PortName string `pulumi:"portName"` - // The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + // The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + // infrastructure IAM role that is used to manage your VPC Lattice infrastructure. RoleArn string `pulumi:"roleArn"` // The full Amazon Resource Name (ARN) of the target group or groups associated with the VPC Lattice configuration that the Amazon ECS tasks will be registered to. TargetGroupArn string `pulumi:"targetGroupArn"` @@ -5761,10 +5763,12 @@ type ServiceVpcLatticeConfigurationInput interface { ToServiceVpcLatticeConfigurationOutputWithContext(context.Context) ServiceVpcLatticeConfigurationOutput } +// The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. type ServiceVpcLatticeConfigurationArgs struct { - // The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + // The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. PortName pulumi.StringInput `pulumi:"portName"` - // The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + // The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + // infrastructure IAM role that is used to manage your VPC Lattice infrastructure. RoleArn pulumi.StringInput `pulumi:"roleArn"` // The full Amazon Resource Name (ARN) of the target group or groups associated with the VPC Lattice configuration that the Amazon ECS tasks will be registered to. TargetGroupArn pulumi.StringInput `pulumi:"targetGroupArn"` @@ -5807,6 +5811,7 @@ func (i ServiceVpcLatticeConfigurationArray) ToServiceVpcLatticeConfigurationArr return pulumi.ToOutputWithContext(ctx, i).(ServiceVpcLatticeConfigurationArrayOutput) } +// The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. type ServiceVpcLatticeConfigurationOutput struct{ *pulumi.OutputState } func (ServiceVpcLatticeConfigurationOutput) ElementType() reflect.Type { @@ -5821,12 +5826,14 @@ func (o ServiceVpcLatticeConfigurationOutput) ToServiceVpcLatticeConfigurationOu return o } -// The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. +// The name of the port mapping to register in the VPC Lattice target group. This is the name of the “portMapping“ you defined in your task definition. func (o ServiceVpcLatticeConfigurationOutput) PortName() pulumi.StringOutput { return o.ApplyT(func(v ServiceVpcLatticeConfiguration) string { return v.PortName }).(pulumi.StringOutput) } -// The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. +// The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS +// +// infrastructure IAM role that is used to manage your VPC Lattice infrastructure. func (o ServiceVpcLatticeConfigurationOutput) RoleArn() pulumi.StringOutput { return o.ApplyT(func(v ServiceVpcLatticeConfiguration) string { return v.RoleArn }).(pulumi.StringOutput) } @@ -7623,7 +7630,7 @@ func (o TaskDefinitionEnvironmentFileArrayOutput) Index(i pulumi.IntInput) TaskD // + Linux platform version ``1.4.0`` or later. // + Windows platform version ``1.0.0`` or later. type TaskDefinitionEphemeralStorage struct { - // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. SizeInGiB *int `pulumi:"sizeInGiB"` } @@ -7644,7 +7651,7 @@ type TaskDefinitionEphemeralStorageInput interface { // + Linux platform version ``1.4.0`` or later. // + Windows platform version ``1.0.0`` or later. type TaskDefinitionEphemeralStorageArgs struct { - // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + // The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. SizeInGiB pulumi.IntPtrInput `pulumi:"sizeInGiB"` } @@ -7730,7 +7737,7 @@ func (o TaskDefinitionEphemeralStorageOutput) ToTaskDefinitionEphemeralStoragePt }).(TaskDefinitionEphemeralStoragePtrOutput) } -// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is “20“ GiB and the maximum supported value is “200“ GiB. +// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is “21“ GiB and the maximum supported value is “200“ GiB. func (o TaskDefinitionEphemeralStorageOutput) SizeInGiB() pulumi.IntPtrOutput { return o.ApplyT(func(v TaskDefinitionEphemeralStorage) *int { return v.SizeInGiB }).(pulumi.IntPtrOutput) } @@ -7759,7 +7766,7 @@ func (o TaskDefinitionEphemeralStoragePtrOutput) Elem() TaskDefinitionEphemeralS }).(TaskDefinitionEphemeralStorageOutput) } -// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is “20“ GiB and the maximum supported value is “200“ GiB. +// The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is “21“ GiB and the maximum supported value is “200“ GiB. func (o TaskDefinitionEphemeralStoragePtrOutput) SizeInGiB() pulumi.IntPtrOutput { return o.ApplyT(func(v *TaskDefinitionEphemeralStorage) *int { if v == nil { diff --git a/sdk/go/aws/ecs/service.go b/sdk/go/aws/ecs/service.go index 41e37e84b7..30502d5223 100644 --- a/sdk/go/aws/ecs/service.go +++ b/sdk/go/aws/ecs/service.go @@ -20,8 +20,7 @@ type Service struct { pulumi.CustomResourceState // Indicates whether to use Availability Zone rebalancing for the service. - // - // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. AvailabilityZoneRebalancing ServiceAvailabilityZoneRebalancingPtrOutput `pulumi:"availabilityZoneRebalancing"` // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -42,9 +41,8 @@ type Service struct { EnableEcsManagedTags pulumi.BoolPtrOutput `pulumi:"enableEcsManagedTags"` // Determines whether the execute command functionality is turned on for the service. If ``true``, the execute command functionality is turned on for all containers in tasks as part of the service. EnableExecuteCommand pulumi.BoolPtrOutput `pulumi:"enableExecuteCommand"` - // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - // If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - // If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + // If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. HealthCheckGracePeriodSeconds pulumi.IntPtrOutput `pulumi:"healthCheckGracePeriodSeconds"` // The launch type on which to run your service. For more information, see [Amazon ECS Launch Types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html) in the *Amazon Elastic Container Service Developer Guide*. LaunchType ServiceLaunchTypePtrOutput `pulumi:"launchType"` @@ -155,8 +153,7 @@ func (ServiceState) ElementType() reflect.Type { type serviceArgs struct { // Indicates whether to use Availability Zone rebalancing for the service. - // - // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. AvailabilityZoneRebalancing *ServiceAvailabilityZoneRebalancing `pulumi:"availabilityZoneRebalancing"` // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -177,9 +174,8 @@ type serviceArgs struct { EnableEcsManagedTags *bool `pulumi:"enableEcsManagedTags"` // Determines whether the execute command functionality is turned on for the service. If ``true``, the execute command functionality is turned on for all containers in tasks as part of the service. EnableExecuteCommand *bool `pulumi:"enableExecuteCommand"` - // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - // If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - // If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + // If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. HealthCheckGracePeriodSeconds *int `pulumi:"healthCheckGracePeriodSeconds"` // The launch type on which to run your service. For more information, see [Amazon ECS Launch Types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html) in the *Amazon Elastic Container Service Developer Guide*. LaunchType *ServiceLaunchType `pulumi:"launchType"` @@ -239,8 +235,7 @@ type serviceArgs struct { // The set of arguments for constructing a Service resource. type ServiceArgs struct { // Indicates whether to use Availability Zone rebalancing for the service. - // - // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + // For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. AvailabilityZoneRebalancing ServiceAvailabilityZoneRebalancingPtrInput // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -261,9 +256,8 @@ type ServiceArgs struct { EnableEcsManagedTags pulumi.BoolPtrInput // Determines whether the execute command functionality is turned on for the service. If ``true``, the execute command functionality is turned on for all containers in tasks as part of the service. EnableExecuteCommand pulumi.BoolPtrInput - // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - // If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - // If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + // The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + // If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. HealthCheckGracePeriodSeconds pulumi.IntPtrInput // The launch type on which to run your service. For more information, see [Amazon ECS Launch Types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html) in the *Amazon Elastic Container Service Developer Guide*. LaunchType ServiceLaunchTypePtrInput @@ -359,7 +353,7 @@ func (o ServiceOutput) ToServiceOutputWithContext(ctx context.Context) ServiceOu // Indicates whether to use Availability Zone rebalancing for the service. // -// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . +// For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. func (o ServiceOutput) AvailabilityZoneRebalancing() ServiceAvailabilityZoneRebalancingPtrOutput { return o.ApplyT(func(v *Service) ServiceAvailabilityZoneRebalancingPtrOutput { return v.AvailabilityZoneRebalancing }).(ServiceAvailabilityZoneRebalancingPtrOutput) } @@ -407,10 +401,9 @@ func (o ServiceOutput) EnableExecuteCommand() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Service) pulumi.BoolPtrOutput { return v.EnableExecuteCommand }).(pulumi.BoolPtrOutput) } -// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of “0“ is used. +// The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of “0“ is used. If you don't use any of the health checks, then “healthCheckGracePeriodSeconds“ is unused. // -// If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). -// If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. +// If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. func (o ServiceOutput) HealthCheckGracePeriodSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v *Service) pulumi.IntPtrOutput { return v.HealthCheckGracePeriodSeconds }).(pulumi.IntPtrOutput) } diff --git a/sdk/go/aws/emrserverless/application.go b/sdk/go/aws/emrserverless/application.go index 41ec376390..88b278299c 100644 --- a/sdk/go/aws/emrserverless/application.go +++ b/sdk/go/aws/emrserverless/application.go @@ -45,6 +45,8 @@ type Application struct { ReleaseLabel pulumi.StringOutput `pulumi:"releaseLabel"` // The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. RuntimeConfiguration ApplicationConfigurationObjectArrayOutput `pulumi:"runtimeConfiguration"` + // The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + SchedulerConfiguration ApplicationSchedulerConfigurationPtrOutput `pulumi:"schedulerConfiguration"` // Tag map with key and value Tags aws.TagArrayOutput `pulumi:"tags"` // The type of the application @@ -128,6 +130,8 @@ type applicationArgs struct { ReleaseLabel string `pulumi:"releaseLabel"` // The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. RuntimeConfiguration []ApplicationConfigurationObject `pulumi:"runtimeConfiguration"` + // The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + SchedulerConfiguration *ApplicationSchedulerConfiguration `pulumi:"schedulerConfiguration"` // Tag map with key and value Tags []aws.Tag `pulumi:"tags"` // The type of the application @@ -162,6 +166,8 @@ type ApplicationArgs struct { ReleaseLabel pulumi.StringInput // The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. RuntimeConfiguration ApplicationConfigurationObjectArrayInput + // The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + SchedulerConfiguration ApplicationSchedulerConfigurationPtrInput // Tag map with key and value Tags aws.TagArrayInput // The type of the application @@ -277,6 +283,11 @@ func (o ApplicationOutput) RuntimeConfiguration() ApplicationConfigurationObject return o.ApplyT(func(v *Application) ApplicationConfigurationObjectArrayOutput { return v.RuntimeConfiguration }).(ApplicationConfigurationObjectArrayOutput) } +// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. +func (o ApplicationOutput) SchedulerConfiguration() ApplicationSchedulerConfigurationPtrOutput { + return o.ApplyT(func(v *Application) ApplicationSchedulerConfigurationPtrOutput { return v.SchedulerConfiguration }).(ApplicationSchedulerConfigurationPtrOutput) +} + // Tag map with key and value func (o ApplicationOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *Application) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) diff --git a/sdk/go/aws/emrserverless/getApplication.go b/sdk/go/aws/emrserverless/getApplication.go index 2d71c76d35..b1b33ccce9 100644 --- a/sdk/go/aws/emrserverless/getApplication.go +++ b/sdk/go/aws/emrserverless/getApplication.go @@ -55,6 +55,8 @@ type LookupApplicationResult struct { ReleaseLabel *string `pulumi:"releaseLabel"` // The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. RuntimeConfiguration []ApplicationConfigurationObject `pulumi:"runtimeConfiguration"` + // The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + SchedulerConfiguration *ApplicationSchedulerConfiguration `pulumi:"schedulerConfiguration"` // Tag map with key and value Tags []aws.Tag `pulumi:"tags"` // The key-value pairs that specify worker type to WorkerTypeSpecificationInput. This parameter must contain all valid worker types for a Spark or Hive application. Valid worker types include Driver and Executor for Spark applications and HiveDriver and TezTask for Hive applications. You can either set image details in this parameter for each worker type, or in imageConfiguration for all worker types. @@ -162,6 +164,11 @@ func (o LookupApplicationResultOutput) RuntimeConfiguration() ApplicationConfigu return o.ApplyT(func(v LookupApplicationResult) []ApplicationConfigurationObject { return v.RuntimeConfiguration }).(ApplicationConfigurationObjectArrayOutput) } +// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. +func (o LookupApplicationResultOutput) SchedulerConfiguration() ApplicationSchedulerConfigurationPtrOutput { + return o.ApplyT(func(v LookupApplicationResult) *ApplicationSchedulerConfiguration { return v.SchedulerConfiguration }).(ApplicationSchedulerConfigurationPtrOutput) +} + // Tag map with key and value func (o LookupApplicationResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupApplicationResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) diff --git a/sdk/go/aws/emrserverless/pulumiTypes.go b/sdk/go/aws/emrserverless/pulumiTypes.go index 9893bc18e7..0bc76e61ab 100644 --- a/sdk/go/aws/emrserverless/pulumiTypes.go +++ b/sdk/go/aws/emrserverless/pulumiTypes.go @@ -2019,6 +2019,165 @@ func (o ApplicationS3MonitoringConfigurationPtrOutput) LogUri() pulumi.StringPtr }).(pulumi.StringPtrOutput) } +// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. +type ApplicationSchedulerConfiguration struct { + // The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + MaxConcurrentRuns *int `pulumi:"maxConcurrentRuns"` + // The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + QueueTimeoutMinutes *int `pulumi:"queueTimeoutMinutes"` +} + +// ApplicationSchedulerConfigurationInput is an input type that accepts ApplicationSchedulerConfigurationArgs and ApplicationSchedulerConfigurationOutput values. +// You can construct a concrete instance of `ApplicationSchedulerConfigurationInput` via: +// +// ApplicationSchedulerConfigurationArgs{...} +type ApplicationSchedulerConfigurationInput interface { + pulumi.Input + + ToApplicationSchedulerConfigurationOutput() ApplicationSchedulerConfigurationOutput + ToApplicationSchedulerConfigurationOutputWithContext(context.Context) ApplicationSchedulerConfigurationOutput +} + +// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. +type ApplicationSchedulerConfigurationArgs struct { + // The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + MaxConcurrentRuns pulumi.IntPtrInput `pulumi:"maxConcurrentRuns"` + // The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + QueueTimeoutMinutes pulumi.IntPtrInput `pulumi:"queueTimeoutMinutes"` +} + +func (ApplicationSchedulerConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ApplicationSchedulerConfiguration)(nil)).Elem() +} + +func (i ApplicationSchedulerConfigurationArgs) ToApplicationSchedulerConfigurationOutput() ApplicationSchedulerConfigurationOutput { + return i.ToApplicationSchedulerConfigurationOutputWithContext(context.Background()) +} + +func (i ApplicationSchedulerConfigurationArgs) ToApplicationSchedulerConfigurationOutputWithContext(ctx context.Context) ApplicationSchedulerConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ApplicationSchedulerConfigurationOutput) +} + +func (i ApplicationSchedulerConfigurationArgs) ToApplicationSchedulerConfigurationPtrOutput() ApplicationSchedulerConfigurationPtrOutput { + return i.ToApplicationSchedulerConfigurationPtrOutputWithContext(context.Background()) +} + +func (i ApplicationSchedulerConfigurationArgs) ToApplicationSchedulerConfigurationPtrOutputWithContext(ctx context.Context) ApplicationSchedulerConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ApplicationSchedulerConfigurationOutput).ToApplicationSchedulerConfigurationPtrOutputWithContext(ctx) +} + +// ApplicationSchedulerConfigurationPtrInput is an input type that accepts ApplicationSchedulerConfigurationArgs, ApplicationSchedulerConfigurationPtr and ApplicationSchedulerConfigurationPtrOutput values. +// You can construct a concrete instance of `ApplicationSchedulerConfigurationPtrInput` via: +// +// ApplicationSchedulerConfigurationArgs{...} +// +// or: +// +// nil +type ApplicationSchedulerConfigurationPtrInput interface { + pulumi.Input + + ToApplicationSchedulerConfigurationPtrOutput() ApplicationSchedulerConfigurationPtrOutput + ToApplicationSchedulerConfigurationPtrOutputWithContext(context.Context) ApplicationSchedulerConfigurationPtrOutput +} + +type applicationSchedulerConfigurationPtrType ApplicationSchedulerConfigurationArgs + +func ApplicationSchedulerConfigurationPtr(v *ApplicationSchedulerConfigurationArgs) ApplicationSchedulerConfigurationPtrInput { + return (*applicationSchedulerConfigurationPtrType)(v) +} + +func (*applicationSchedulerConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ApplicationSchedulerConfiguration)(nil)).Elem() +} + +func (i *applicationSchedulerConfigurationPtrType) ToApplicationSchedulerConfigurationPtrOutput() ApplicationSchedulerConfigurationPtrOutput { + return i.ToApplicationSchedulerConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *applicationSchedulerConfigurationPtrType) ToApplicationSchedulerConfigurationPtrOutputWithContext(ctx context.Context) ApplicationSchedulerConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ApplicationSchedulerConfigurationPtrOutput) +} + +// The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. +type ApplicationSchedulerConfigurationOutput struct{ *pulumi.OutputState } + +func (ApplicationSchedulerConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ApplicationSchedulerConfiguration)(nil)).Elem() +} + +func (o ApplicationSchedulerConfigurationOutput) ToApplicationSchedulerConfigurationOutput() ApplicationSchedulerConfigurationOutput { + return o +} + +func (o ApplicationSchedulerConfigurationOutput) ToApplicationSchedulerConfigurationOutputWithContext(ctx context.Context) ApplicationSchedulerConfigurationOutput { + return o +} + +func (o ApplicationSchedulerConfigurationOutput) ToApplicationSchedulerConfigurationPtrOutput() ApplicationSchedulerConfigurationPtrOutput { + return o.ToApplicationSchedulerConfigurationPtrOutputWithContext(context.Background()) +} + +func (o ApplicationSchedulerConfigurationOutput) ToApplicationSchedulerConfigurationPtrOutputWithContext(ctx context.Context) ApplicationSchedulerConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ApplicationSchedulerConfiguration) *ApplicationSchedulerConfiguration { + return &v + }).(ApplicationSchedulerConfigurationPtrOutput) +} + +// The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. +func (o ApplicationSchedulerConfigurationOutput) MaxConcurrentRuns() pulumi.IntPtrOutput { + return o.ApplyT(func(v ApplicationSchedulerConfiguration) *int { return v.MaxConcurrentRuns }).(pulumi.IntPtrOutput) +} + +// The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. +func (o ApplicationSchedulerConfigurationOutput) QueueTimeoutMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v ApplicationSchedulerConfiguration) *int { return v.QueueTimeoutMinutes }).(pulumi.IntPtrOutput) +} + +type ApplicationSchedulerConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (ApplicationSchedulerConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ApplicationSchedulerConfiguration)(nil)).Elem() +} + +func (o ApplicationSchedulerConfigurationPtrOutput) ToApplicationSchedulerConfigurationPtrOutput() ApplicationSchedulerConfigurationPtrOutput { + return o +} + +func (o ApplicationSchedulerConfigurationPtrOutput) ToApplicationSchedulerConfigurationPtrOutputWithContext(ctx context.Context) ApplicationSchedulerConfigurationPtrOutput { + return o +} + +func (o ApplicationSchedulerConfigurationPtrOutput) Elem() ApplicationSchedulerConfigurationOutput { + return o.ApplyT(func(v *ApplicationSchedulerConfiguration) ApplicationSchedulerConfiguration { + if v != nil { + return *v + } + var ret ApplicationSchedulerConfiguration + return ret + }).(ApplicationSchedulerConfigurationOutput) +} + +// The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. +func (o ApplicationSchedulerConfigurationPtrOutput) MaxConcurrentRuns() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ApplicationSchedulerConfiguration) *int { + if v == nil { + return nil + } + return v.MaxConcurrentRuns + }).(pulumi.IntPtrOutput) +} + +// The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. +func (o ApplicationSchedulerConfigurationPtrOutput) QueueTimeoutMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ApplicationSchedulerConfiguration) *int { + if v == nil { + return nil + } + return v.QueueTimeoutMinutes + }).(pulumi.IntPtrOutput) +} + // A key-value pair to associate with a resource. type ApplicationTag struct { // The value for the tag. You can specify a value that is 1 to 128 Unicode characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. @@ -2236,6 +2395,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ApplicationNetworkConfigurationPtrInput)(nil)).Elem(), ApplicationNetworkConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ApplicationS3MonitoringConfigurationInput)(nil)).Elem(), ApplicationS3MonitoringConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ApplicationS3MonitoringConfigurationPtrInput)(nil)).Elem(), ApplicationS3MonitoringConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ApplicationSchedulerConfigurationInput)(nil)).Elem(), ApplicationSchedulerConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ApplicationSchedulerConfigurationPtrInput)(nil)).Elem(), ApplicationSchedulerConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ApplicationWorkerConfigurationInput)(nil)).Elem(), ApplicationWorkerConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ApplicationWorkerTypeSpecificationInputInput)(nil)).Elem(), ApplicationWorkerTypeSpecificationInputArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ApplicationWorkerTypeSpecificationInputMapInput)(nil)).Elem(), ApplicationWorkerTypeSpecificationInputMap{}) @@ -2266,6 +2427,8 @@ func init() { pulumi.RegisterOutputType(ApplicationNetworkConfigurationPtrOutput{}) pulumi.RegisterOutputType(ApplicationS3MonitoringConfigurationOutput{}) pulumi.RegisterOutputType(ApplicationS3MonitoringConfigurationPtrOutput{}) + pulumi.RegisterOutputType(ApplicationSchedulerConfigurationOutput{}) + pulumi.RegisterOutputType(ApplicationSchedulerConfigurationPtrOutput{}) pulumi.RegisterOutputType(ApplicationWorkerConfigurationOutput{}) pulumi.RegisterOutputType(ApplicationWorkerTypeSpecificationInputOutput{}) pulumi.RegisterOutputType(ApplicationWorkerTypeSpecificationInputMapOutput{}) diff --git a/sdk/go/aws/events/pulumiTypes.go b/sdk/go/aws/events/pulumiTypes.go index bc66a605ce..2ad4ae378c 100644 --- a/sdk/go/aws/events/pulumiTypes.go +++ b/sdk/go/aws/events/pulumiTypes.go @@ -5462,9 +5462,9 @@ func (o RuleRunCommandTargetArrayOutput) Index(i pulumi.IntInput) RuleRunCommand } type RuleSageMakerPipelineParameter struct { - // Name of parameter to start execution of a SageMaker Model Building Pipeline. + // Name of parameter to start execution of a SageMaker AI Model Building Pipeline. Name string `pulumi:"name"` - // Value of parameter to start execution of a SageMaker Model Building Pipeline. + // Value of parameter to start execution of a SageMaker AI Model Building Pipeline. Value string `pulumi:"value"` } @@ -5480,9 +5480,9 @@ type RuleSageMakerPipelineParameterInput interface { } type RuleSageMakerPipelineParameterArgs struct { - // Name of parameter to start execution of a SageMaker Model Building Pipeline. + // Name of parameter to start execution of a SageMaker AI Model Building Pipeline. Name pulumi.StringInput `pulumi:"name"` - // Value of parameter to start execution of a SageMaker Model Building Pipeline. + // Value of parameter to start execution of a SageMaker AI Model Building Pipeline. Value pulumi.StringInput `pulumi:"value"` } @@ -5537,12 +5537,12 @@ func (o RuleSageMakerPipelineParameterOutput) ToRuleSageMakerPipelineParameterOu return o } -// Name of parameter to start execution of a SageMaker Model Building Pipeline. +// Name of parameter to start execution of a SageMaker AI Model Building Pipeline. func (o RuleSageMakerPipelineParameterOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v RuleSageMakerPipelineParameter) string { return v.Name }).(pulumi.StringOutput) } -// Value of parameter to start execution of a SageMaker Model Building Pipeline. +// Value of parameter to start execution of a SageMaker AI Model Building Pipeline. func (o RuleSageMakerPipelineParameterOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v RuleSageMakerPipelineParameter) string { return v.Value }).(pulumi.StringOutput) } @@ -5568,7 +5568,7 @@ func (o RuleSageMakerPipelineParameterArrayOutput) Index(i pulumi.IntInput) Rule } type RuleSageMakerPipelineParameters struct { - // List of Parameter names and values for SageMaker Model Building Pipeline execution. + // List of Parameter names and values for SageMaker AI Model Building Pipeline execution. PipelineParameterList []RuleSageMakerPipelineParameter `pulumi:"pipelineParameterList"` } @@ -5584,7 +5584,7 @@ type RuleSageMakerPipelineParametersInput interface { } type RuleSageMakerPipelineParametersArgs struct { - // List of Parameter names and values for SageMaker Model Building Pipeline execution. + // List of Parameter names and values for SageMaker AI Model Building Pipeline execution. PipelineParameterList RuleSageMakerPipelineParameterArrayInput `pulumi:"pipelineParameterList"` } @@ -5665,7 +5665,7 @@ func (o RuleSageMakerPipelineParametersOutput) ToRuleSageMakerPipelineParameters }).(RuleSageMakerPipelineParametersPtrOutput) } -// List of Parameter names and values for SageMaker Model Building Pipeline execution. +// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. func (o RuleSageMakerPipelineParametersOutput) PipelineParameterList() RuleSageMakerPipelineParameterArrayOutput { return o.ApplyT(func(v RuleSageMakerPipelineParameters) []RuleSageMakerPipelineParameter { return v.PipelineParameterList @@ -5696,7 +5696,7 @@ func (o RuleSageMakerPipelineParametersPtrOutput) Elem() RuleSageMakerPipelinePa }).(RuleSageMakerPipelineParametersOutput) } -// List of Parameter names and values for SageMaker Model Building Pipeline execution. +// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. func (o RuleSageMakerPipelineParametersPtrOutput) PipelineParameterList() RuleSageMakerPipelineParameterArrayOutput { return o.ApplyT(func(v *RuleSageMakerPipelineParameters) []RuleSageMakerPipelineParameter { if v == nil { @@ -5984,9 +5984,9 @@ type RuleTarget struct { RoleArn *string `pulumi:"roleArn"` // Parameters used when you are using the rule to invoke Amazon EC2 Run Command. RunCommandParameters *RuleRunCommandParameters `pulumi:"runCommandParameters"` - // Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + // Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. // - // If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + // If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. SageMakerPipelineParameters *RuleSageMakerPipelineParameters `pulumi:"sageMakerPipelineParameters"` // Contains the message group ID to use when the target is a FIFO queue. // @@ -6040,9 +6040,9 @@ type RuleTargetArgs struct { RoleArn pulumi.StringPtrInput `pulumi:"roleArn"` // Parameters used when you are using the rule to invoke Amazon EC2 Run Command. RunCommandParameters RuleRunCommandParametersPtrInput `pulumi:"runCommandParameters"` - // Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + // Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. // - // If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + // If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. SageMakerPipelineParameters RuleSageMakerPipelineParametersPtrInput `pulumi:"sageMakerPipelineParameters"` // Contains the message group ID to use when the target is a FIFO queue. // @@ -6180,9 +6180,9 @@ func (o RuleTargetOutput) RunCommandParameters() RuleRunCommandParametersPtrOutp return o.ApplyT(func(v RuleTarget) *RuleRunCommandParameters { return v.RunCommandParameters }).(RuleRunCommandParametersPtrOutput) } -// Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. +// Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. // -// If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. +// If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. func (o RuleTargetOutput) SageMakerPipelineParameters() RuleSageMakerPipelineParametersPtrOutput { return o.ApplyT(func(v RuleTarget) *RuleSageMakerPipelineParameters { return v.SageMakerPipelineParameters }).(RuleSageMakerPipelineParametersPtrOutput) } diff --git a/sdk/go/aws/fis/pulumiTypes.go b/sdk/go/aws/fis/pulumiTypes.go index 9f574f4eec..7e30e8aa1a 100644 --- a/sdk/go/aws/fis/pulumiTypes.go +++ b/sdk/go/aws/fis/pulumiTypes.go @@ -408,7 +408,7 @@ func (o ExperimentTemplateExperimentOptionsPtrOutput) EmptyTargetResolutionMode( type ExperimentTemplateExperimentReportConfiguration struct { // The data sources for the experiment report. - DataSources ExperimentTemplateExperimentReportConfigurationDataSourcesProperties `pulumi:"dataSources"` + DataSources *ExperimentTemplateExperimentReportConfigurationDataSourcesProperties `pulumi:"dataSources"` // The output destinations of the experiment report. Outputs ExperimentTemplateExperimentReportConfigurationOutputsProperties `pulumi:"outputs"` // The duration after the experiment end time for the data sources to include in the report. @@ -430,7 +430,7 @@ type ExperimentTemplateExperimentReportConfigurationInput interface { type ExperimentTemplateExperimentReportConfigurationArgs struct { // The data sources for the experiment report. - DataSources ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesInput `pulumi:"dataSources"` + DataSources ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesPtrInput `pulumi:"dataSources"` // The output destinations of the experiment report. Outputs ExperimentTemplateExperimentReportConfigurationOutputsPropertiesInput `pulumi:"outputs"` // The duration after the experiment end time for the data sources to include in the report. @@ -517,10 +517,10 @@ func (o ExperimentTemplateExperimentReportConfigurationOutput) ToExperimentTempl } // The data sources for the experiment report. -func (o ExperimentTemplateExperimentReportConfigurationOutput) DataSources() ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesOutput { - return o.ApplyT(func(v ExperimentTemplateExperimentReportConfiguration) ExperimentTemplateExperimentReportConfigurationDataSourcesProperties { +func (o ExperimentTemplateExperimentReportConfigurationOutput) DataSources() ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesPtrOutput { + return o.ApplyT(func(v ExperimentTemplateExperimentReportConfiguration) *ExperimentTemplateExperimentReportConfigurationDataSourcesProperties { return v.DataSources - }).(ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesOutput) + }).(ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesPtrOutput) } // The output destinations of the experiment report. @@ -570,7 +570,7 @@ func (o ExperimentTemplateExperimentReportConfigurationPtrOutput) DataSources() if v == nil { return nil } - return &v.DataSources + return v.DataSources }).(ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesPtrOutput) } diff --git a/sdk/go/aws/logs/getLogGroup.go b/sdk/go/aws/logs/getLogGroup.go index fc8c53a840..0ccb75ae4a 100644 --- a/sdk/go/aws/logs/getLogGroup.go +++ b/sdk/go/aws/logs/getLogGroup.go @@ -40,7 +40,8 @@ type LookupLogGroupResult struct { // 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. - DataProtectionPolicy interface{} `pulumi:"dataProtectionPolicy"` + DataProtectionPolicy interface{} `pulumi:"dataProtectionPolicy"` + FieldIndexPolicies []interface{} `pulumi:"fieldIndexPolicies"` // 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. @@ -106,6 +107,10 @@ func (o LookupLogGroupResultOutput) DataProtectionPolicy() pulumi.AnyOutput { return o.ApplyT(func(v LookupLogGroupResult) interface{} { return v.DataProtectionPolicy }).(pulumi.AnyOutput) } +func (o LookupLogGroupResultOutput) FieldIndexPolicies() pulumi.ArrayOutput { + return o.ApplyT(func(v LookupLogGroupResult) []interface{} { return v.FieldIndexPolicies }).(pulumi.ArrayOutput) +} + // 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. diff --git a/sdk/go/aws/logs/getMetricFilter.go b/sdk/go/aws/logs/getMetricFilter.go index ee3e35afba..e7c0e58e84 100644 --- a/sdk/go/aws/logs/getMetricFilter.go +++ b/sdk/go/aws/logs/getMetricFilter.go @@ -32,6 +32,10 @@ type LookupMetricFilterArgs struct { } type LookupMetricFilterResult struct { + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs *bool `pulumi:"applyOnTransformedLogs"` // 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). FilterPattern *string `pulumi:"filterPattern"` // The metric transformations. @@ -72,6 +76,13 @@ func (o LookupMetricFilterResultOutput) ToLookupMetricFilterResultOutputWithCont return o } +// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . +// +// If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. +func (o LookupMetricFilterResultOutput) ApplyOnTransformedLogs() pulumi.BoolPtrOutput { + return o.ApplyT(func(v LookupMetricFilterResult) *bool { return v.ApplyOnTransformedLogs }).(pulumi.BoolPtrOutput) +} + // 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). func (o LookupMetricFilterResultOutput) FilterPattern() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupMetricFilterResult) *string { return v.FilterPattern }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/logs/getQueryDefinition.go b/sdk/go/aws/logs/getQueryDefinition.go index 9d50d77ad4..1d6ae824f6 100644 --- a/sdk/go/aws/logs/getQueryDefinition.go +++ b/sdk/go/aws/logs/getQueryDefinition.go @@ -34,6 +34,8 @@ type LookupQueryDefinitionResult struct { Name *string `pulumi:"name"` // Unique identifier of a query definition QueryDefinitionId *string `pulumi:"queryDefinitionId"` + // Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + QueryLanguage *QueryDefinitionQueryLanguage `pulumi:"queryLanguage"` // The query string to use for this definition QueryString *string `pulumi:"queryString"` } @@ -85,6 +87,11 @@ func (o LookupQueryDefinitionResultOutput) QueryDefinitionId() pulumi.StringPtrO return o.ApplyT(func(v LookupQueryDefinitionResult) *string { return v.QueryDefinitionId }).(pulumi.StringPtrOutput) } +// Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. +func (o LookupQueryDefinitionResultOutput) QueryLanguage() QueryDefinitionQueryLanguagePtrOutput { + return o.ApplyT(func(v LookupQueryDefinitionResult) *QueryDefinitionQueryLanguage { return v.QueryLanguage }).(QueryDefinitionQueryLanguagePtrOutput) +} + // The query string to use for this definition func (o LookupQueryDefinitionResultOutput) QueryString() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupQueryDefinitionResult) *string { return v.QueryString }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/logs/getSubscriptionFilter.go b/sdk/go/aws/logs/getSubscriptionFilter.go index aebc55ee46..699b2a95b2 100644 --- a/sdk/go/aws/logs/getSubscriptionFilter.go +++ b/sdk/go/aws/logs/getSubscriptionFilter.go @@ -40,6 +40,10 @@ type LookupSubscriptionFilterArgs struct { } type LookupSubscriptionFilterResult struct { + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs *bool `pulumi:"applyOnTransformedLogs"` // The Amazon Resource Name (ARN) of the destination. DestinationArn *string `pulumi:"destinationArn"` // The method used to distribute log data to the destination, which can be either random or grouped by log stream. @@ -84,6 +88,13 @@ func (o LookupSubscriptionFilterResultOutput) ToLookupSubscriptionFilterResultOu return o } +// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . +// +// If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. +func (o LookupSubscriptionFilterResultOutput) ApplyOnTransformedLogs() pulumi.BoolPtrOutput { + return o.ApplyT(func(v LookupSubscriptionFilterResult) *bool { return v.ApplyOnTransformedLogs }).(pulumi.BoolPtrOutput) +} + // The Amazon Resource Name (ARN) of the destination. func (o LookupSubscriptionFilterResultOutput) DestinationArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSubscriptionFilterResult) *string { return v.DestinationArn }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/logs/getTransformer.go b/sdk/go/aws/logs/getTransformer.go new file mode 100644 index 0000000000..b62a23cbb0 --- /dev/null +++ b/sdk/go/aws/logs/getTransformer.go @@ -0,0 +1,74 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package logs + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Specifies a transformer on the log group to transform logs into consistent structured and information rich format. +func LookupTransformer(ctx *pulumi.Context, args *LookupTransformerArgs, opts ...pulumi.InvokeOption) (*LookupTransformerResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupTransformerResult + err := ctx.Invoke("aws-native:logs:getTransformer", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupTransformerArgs struct { + // Existing log group that you want to associate with this transformer. + LogGroupIdentifier string `pulumi:"logGroupIdentifier"` +} + +type LookupTransformerResult struct { + // List of processors in a transformer + TransformerConfig []TransformerProcessor `pulumi:"transformerConfig"` +} + +func LookupTransformerOutput(ctx *pulumi.Context, args LookupTransformerOutputArgs, opts ...pulumi.InvokeOption) LookupTransformerResultOutput { + return pulumi.ToOutputWithContext(ctx.Context(), args). + ApplyT(func(v interface{}) (LookupTransformerResultOutput, error) { + args := v.(LookupTransformerArgs) + options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)} + return ctx.InvokeOutput("aws-native:logs:getTransformer", args, LookupTransformerResultOutput{}, options).(LookupTransformerResultOutput), nil + }).(LookupTransformerResultOutput) +} + +type LookupTransformerOutputArgs struct { + // Existing log group that you want to associate with this transformer. + LogGroupIdentifier pulumi.StringInput `pulumi:"logGroupIdentifier"` +} + +func (LookupTransformerOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupTransformerArgs)(nil)).Elem() +} + +type LookupTransformerResultOutput struct{ *pulumi.OutputState } + +func (LookupTransformerResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupTransformerResult)(nil)).Elem() +} + +func (o LookupTransformerResultOutput) ToLookupTransformerResultOutput() LookupTransformerResultOutput { + return o +} + +func (o LookupTransformerResultOutput) ToLookupTransformerResultOutputWithContext(ctx context.Context) LookupTransformerResultOutput { + return o +} + +// List of processors in a transformer +func (o LookupTransformerResultOutput) TransformerConfig() TransformerProcessorArrayOutput { + return o.ApplyT(func(v LookupTransformerResult) []TransformerProcessor { return v.TransformerConfig }).(TransformerProcessorArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupTransformerResultOutput{}) +} diff --git a/sdk/go/aws/logs/init.go b/sdk/go/aws/logs/init.go index fea3fadbac..3509655fb9 100644 --- a/sdk/go/aws/logs/init.go +++ b/sdk/go/aws/logs/init.go @@ -47,6 +47,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &ResourcePolicy{} case "aws-native:logs:SubscriptionFilter": r = &SubscriptionFilter{} + case "aws-native:logs:Transformer": + r = &Transformer{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } diff --git a/sdk/go/aws/logs/logGroup.go b/sdk/go/aws/logs/logGroup.go index 135a2e511b..957dd269cc 100644 --- a/sdk/go/aws/logs/logGroup.go +++ b/sdk/go/aws/logs/logGroup.go @@ -27,7 +27,8 @@ type LogGroup struct { // 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. - DataProtectionPolicy pulumi.AnyOutput `pulumi:"dataProtectionPolicy"` + DataProtectionPolicy pulumi.AnyOutput `pulumi:"dataProtectionPolicy"` + FieldIndexPolicies pulumi.ArrayOutput `pulumi:"fieldIndexPolicies"` // 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. @@ -97,7 +98,8 @@ type logGroupArgs struct { // 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. - DataProtectionPolicy interface{} `pulumi:"dataProtectionPolicy"` + DataProtectionPolicy interface{} `pulumi:"dataProtectionPolicy"` + FieldIndexPolicies []interface{} `pulumi:"fieldIndexPolicies"` // 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. @@ -126,6 +128,7 @@ type LogGroupArgs struct { // // 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. DataProtectionPolicy pulumi.Input + FieldIndexPolicies pulumi.ArrayInput // 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. @@ -198,6 +201,10 @@ func (o LogGroupOutput) DataProtectionPolicy() pulumi.AnyOutput { return o.ApplyT(func(v *LogGroup) pulumi.AnyOutput { return v.DataProtectionPolicy }).(pulumi.AnyOutput) } +func (o LogGroupOutput) FieldIndexPolicies() pulumi.ArrayOutput { + return o.ApplyT(func(v *LogGroup) pulumi.ArrayOutput { return v.FieldIndexPolicies }).(pulumi.ArrayOutput) +} + // 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. diff --git a/sdk/go/aws/logs/metricFilter.go b/sdk/go/aws/logs/metricFilter.go index 68aaa9f4f3..bec1893d1f 100644 --- a/sdk/go/aws/logs/metricFilter.go +++ b/sdk/go/aws/logs/metricFilter.go @@ -18,6 +18,10 @@ import ( type MetricFilter struct { pulumi.CustomResourceState + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs pulumi.BoolPtrOutput `pulumi:"applyOnTransformedLogs"` // The name of the metric filter. FilterName pulumi.StringPtrOutput `pulumi:"filterName"` // 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). @@ -82,6 +86,10 @@ func (MetricFilterState) ElementType() reflect.Type { } type metricFilterArgs struct { + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs *bool `pulumi:"applyOnTransformedLogs"` // The name of the metric filter. FilterName *string `pulumi:"filterName"` // 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). @@ -94,6 +102,10 @@ type metricFilterArgs struct { // The set of arguments for constructing a MetricFilter resource. type MetricFilterArgs struct { + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs pulumi.BoolPtrInput // The name of the metric filter. FilterName pulumi.StringPtrInput // 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). @@ -141,6 +153,13 @@ func (o MetricFilterOutput) ToMetricFilterOutputWithContext(ctx context.Context) return o } +// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . +// +// If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. +func (o MetricFilterOutput) ApplyOnTransformedLogs() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *MetricFilter) pulumi.BoolPtrOutput { return v.ApplyOnTransformedLogs }).(pulumi.BoolPtrOutput) +} + // The name of the metric filter. func (o MetricFilterOutput) FilterName() pulumi.StringPtrOutput { return o.ApplyT(func(v *MetricFilter) pulumi.StringPtrOutput { return v.FilterName }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/logs/pulumiEnums.go b/sdk/go/aws/logs/pulumiEnums.go index 44362e0eb6..5cc28c0d1c 100644 --- a/sdk/go/aws/logs/pulumiEnums.go +++ b/sdk/go/aws/logs/pulumiEnums.go @@ -1156,6 +1156,174 @@ func (in *metricFilterMetricTransformationUnitPtr) ToMetricFilterMetricTransform return pulumi.ToOutputWithContext(ctx, in).(MetricFilterMetricTransformationUnitPtrOutput) } +// Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. +type QueryDefinitionQueryLanguage string + +const ( + QueryDefinitionQueryLanguageCwli = QueryDefinitionQueryLanguage("CWLI") + QueryDefinitionQueryLanguageSql = QueryDefinitionQueryLanguage("SQL") + QueryDefinitionQueryLanguagePpl = QueryDefinitionQueryLanguage("PPL") +) + +func (QueryDefinitionQueryLanguage) ElementType() reflect.Type { + return reflect.TypeOf((*QueryDefinitionQueryLanguage)(nil)).Elem() +} + +func (e QueryDefinitionQueryLanguage) ToQueryDefinitionQueryLanguageOutput() QueryDefinitionQueryLanguageOutput { + return pulumi.ToOutput(e).(QueryDefinitionQueryLanguageOutput) +} + +func (e QueryDefinitionQueryLanguage) ToQueryDefinitionQueryLanguageOutputWithContext(ctx context.Context) QueryDefinitionQueryLanguageOutput { + return pulumi.ToOutputWithContext(ctx, e).(QueryDefinitionQueryLanguageOutput) +} + +func (e QueryDefinitionQueryLanguage) ToQueryDefinitionQueryLanguagePtrOutput() QueryDefinitionQueryLanguagePtrOutput { + return e.ToQueryDefinitionQueryLanguagePtrOutputWithContext(context.Background()) +} + +func (e QueryDefinitionQueryLanguage) ToQueryDefinitionQueryLanguagePtrOutputWithContext(ctx context.Context) QueryDefinitionQueryLanguagePtrOutput { + return QueryDefinitionQueryLanguage(e).ToQueryDefinitionQueryLanguageOutputWithContext(ctx).ToQueryDefinitionQueryLanguagePtrOutputWithContext(ctx) +} + +func (e QueryDefinitionQueryLanguage) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e QueryDefinitionQueryLanguage) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e QueryDefinitionQueryLanguage) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e QueryDefinitionQueryLanguage) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type QueryDefinitionQueryLanguageOutput struct{ *pulumi.OutputState } + +func (QueryDefinitionQueryLanguageOutput) ElementType() reflect.Type { + return reflect.TypeOf((*QueryDefinitionQueryLanguage)(nil)).Elem() +} + +func (o QueryDefinitionQueryLanguageOutput) ToQueryDefinitionQueryLanguageOutput() QueryDefinitionQueryLanguageOutput { + return o +} + +func (o QueryDefinitionQueryLanguageOutput) ToQueryDefinitionQueryLanguageOutputWithContext(ctx context.Context) QueryDefinitionQueryLanguageOutput { + return o +} + +func (o QueryDefinitionQueryLanguageOutput) ToQueryDefinitionQueryLanguagePtrOutput() QueryDefinitionQueryLanguagePtrOutput { + return o.ToQueryDefinitionQueryLanguagePtrOutputWithContext(context.Background()) +} + +func (o QueryDefinitionQueryLanguageOutput) ToQueryDefinitionQueryLanguagePtrOutputWithContext(ctx context.Context) QueryDefinitionQueryLanguagePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v QueryDefinitionQueryLanguage) *QueryDefinitionQueryLanguage { + return &v + }).(QueryDefinitionQueryLanguagePtrOutput) +} + +func (o QueryDefinitionQueryLanguageOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o QueryDefinitionQueryLanguageOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e QueryDefinitionQueryLanguage) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o QueryDefinitionQueryLanguageOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o QueryDefinitionQueryLanguageOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e QueryDefinitionQueryLanguage) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type QueryDefinitionQueryLanguagePtrOutput struct{ *pulumi.OutputState } + +func (QueryDefinitionQueryLanguagePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**QueryDefinitionQueryLanguage)(nil)).Elem() +} + +func (o QueryDefinitionQueryLanguagePtrOutput) ToQueryDefinitionQueryLanguagePtrOutput() QueryDefinitionQueryLanguagePtrOutput { + return o +} + +func (o QueryDefinitionQueryLanguagePtrOutput) ToQueryDefinitionQueryLanguagePtrOutputWithContext(ctx context.Context) QueryDefinitionQueryLanguagePtrOutput { + return o +} + +func (o QueryDefinitionQueryLanguagePtrOutput) Elem() QueryDefinitionQueryLanguageOutput { + return o.ApplyT(func(v *QueryDefinitionQueryLanguage) QueryDefinitionQueryLanguage { + if v != nil { + return *v + } + var ret QueryDefinitionQueryLanguage + return ret + }).(QueryDefinitionQueryLanguageOutput) +} + +func (o QueryDefinitionQueryLanguagePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o QueryDefinitionQueryLanguagePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *QueryDefinitionQueryLanguage) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// QueryDefinitionQueryLanguageInput is an input type that accepts values of the QueryDefinitionQueryLanguage enum +// A concrete instance of `QueryDefinitionQueryLanguageInput` can be one of the following: +// +// QueryDefinitionQueryLanguageCwli +// QueryDefinitionQueryLanguageSql +// QueryDefinitionQueryLanguagePpl +type QueryDefinitionQueryLanguageInput interface { + pulumi.Input + + ToQueryDefinitionQueryLanguageOutput() QueryDefinitionQueryLanguageOutput + ToQueryDefinitionQueryLanguageOutputWithContext(context.Context) QueryDefinitionQueryLanguageOutput +} + +var queryDefinitionQueryLanguagePtrType = reflect.TypeOf((**QueryDefinitionQueryLanguage)(nil)).Elem() + +type QueryDefinitionQueryLanguagePtrInput interface { + pulumi.Input + + ToQueryDefinitionQueryLanguagePtrOutput() QueryDefinitionQueryLanguagePtrOutput + ToQueryDefinitionQueryLanguagePtrOutputWithContext(context.Context) QueryDefinitionQueryLanguagePtrOutput +} + +type queryDefinitionQueryLanguagePtr string + +func QueryDefinitionQueryLanguagePtr(v string) QueryDefinitionQueryLanguagePtrInput { + return (*queryDefinitionQueryLanguagePtr)(&v) +} + +func (*queryDefinitionQueryLanguagePtr) ElementType() reflect.Type { + return queryDefinitionQueryLanguagePtrType +} + +func (in *queryDefinitionQueryLanguagePtr) ToQueryDefinitionQueryLanguagePtrOutput() QueryDefinitionQueryLanguagePtrOutput { + return pulumi.ToOutput(in).(QueryDefinitionQueryLanguagePtrOutput) +} + +func (in *queryDefinitionQueryLanguagePtr) ToQueryDefinitionQueryLanguagePtrOutputWithContext(ctx context.Context) QueryDefinitionQueryLanguagePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(QueryDefinitionQueryLanguagePtrOutput) +} + // The method used to distribute log data to the destination, which can be either random or grouped by log stream. type SubscriptionFilterDistribution string @@ -1322,6 +1490,340 @@ func (in *subscriptionFilterDistributionPtr) ToSubscriptionFilterDistributionPtr return pulumi.ToOutputWithContext(ctx, in).(SubscriptionFilterDistributionPtrOutput) } +type TransformerProcessorListToMapPropertiesFlattenedElement string + +const ( + TransformerProcessorListToMapPropertiesFlattenedElementFirst = TransformerProcessorListToMapPropertiesFlattenedElement("first") + TransformerProcessorListToMapPropertiesFlattenedElementLast = TransformerProcessorListToMapPropertiesFlattenedElement("last") +) + +func (TransformerProcessorListToMapPropertiesFlattenedElement) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorListToMapPropertiesFlattenedElement)(nil)).Elem() +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToTransformerProcessorListToMapPropertiesFlattenedElementOutput() TransformerProcessorListToMapPropertiesFlattenedElementOutput { + return pulumi.ToOutput(e).(TransformerProcessorListToMapPropertiesFlattenedElementOutput) +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToTransformerProcessorListToMapPropertiesFlattenedElementOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesFlattenedElementOutput { + return pulumi.ToOutputWithContext(ctx, e).(TransformerProcessorListToMapPropertiesFlattenedElementOutput) +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutput() TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return e.ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(context.Background()) +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return TransformerProcessorListToMapPropertiesFlattenedElement(e).ToTransformerProcessorListToMapPropertiesFlattenedElementOutputWithContext(ctx).ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(ctx) +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e TransformerProcessorListToMapPropertiesFlattenedElement) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TransformerProcessorListToMapPropertiesFlattenedElementOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorListToMapPropertiesFlattenedElementOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorListToMapPropertiesFlattenedElement)(nil)).Elem() +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToTransformerProcessorListToMapPropertiesFlattenedElementOutput() TransformerProcessorListToMapPropertiesFlattenedElementOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToTransformerProcessorListToMapPropertiesFlattenedElementOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesFlattenedElementOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutput() TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return o.ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorListToMapPropertiesFlattenedElement) *TransformerProcessorListToMapPropertiesFlattenedElement { + return &v + }).(TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerProcessorListToMapPropertiesFlattenedElement) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerProcessorListToMapPropertiesFlattenedElement) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorListToMapPropertiesFlattenedElement)(nil)).Elem() +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutput() TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) Elem() TransformerProcessorListToMapPropertiesFlattenedElementOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapPropertiesFlattenedElement) TransformerProcessorListToMapPropertiesFlattenedElement { + if v != nil { + return *v + } + var ret TransformerProcessorListToMapPropertiesFlattenedElement + return ret + }).(TransformerProcessorListToMapPropertiesFlattenedElementOutput) +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *TransformerProcessorListToMapPropertiesFlattenedElement) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TransformerProcessorListToMapPropertiesFlattenedElementInput is an input type that accepts values of the TransformerProcessorListToMapPropertiesFlattenedElement enum +// A concrete instance of `TransformerProcessorListToMapPropertiesFlattenedElementInput` can be one of the following: +// +// TransformerProcessorListToMapPropertiesFlattenedElementFirst +// TransformerProcessorListToMapPropertiesFlattenedElementLast +type TransformerProcessorListToMapPropertiesFlattenedElementInput interface { + pulumi.Input + + ToTransformerProcessorListToMapPropertiesFlattenedElementOutput() TransformerProcessorListToMapPropertiesFlattenedElementOutput + ToTransformerProcessorListToMapPropertiesFlattenedElementOutputWithContext(context.Context) TransformerProcessorListToMapPropertiesFlattenedElementOutput +} + +var transformerProcessorListToMapPropertiesFlattenedElementPtrType = reflect.TypeOf((**TransformerProcessorListToMapPropertiesFlattenedElement)(nil)).Elem() + +type TransformerProcessorListToMapPropertiesFlattenedElementPtrInput interface { + pulumi.Input + + ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutput() TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput + ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(context.Context) TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput +} + +type transformerProcessorListToMapPropertiesFlattenedElementPtr string + +func TransformerProcessorListToMapPropertiesFlattenedElementPtr(v string) TransformerProcessorListToMapPropertiesFlattenedElementPtrInput { + return (*transformerProcessorListToMapPropertiesFlattenedElementPtr)(&v) +} + +func (*transformerProcessorListToMapPropertiesFlattenedElementPtr) ElementType() reflect.Type { + return transformerProcessorListToMapPropertiesFlattenedElementPtrType +} + +func (in *transformerProcessorListToMapPropertiesFlattenedElementPtr) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutput() TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return pulumi.ToOutput(in).(TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) +} + +func (in *transformerProcessorListToMapPropertiesFlattenedElementPtr) ToTransformerProcessorListToMapPropertiesFlattenedElementPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) +} + +type TransformerTypeConverterEntryType string + +const ( + TransformerTypeConverterEntryTypeBoolean = TransformerTypeConverterEntryType("boolean") + TransformerTypeConverterEntryTypeInteger = TransformerTypeConverterEntryType("integer") + TransformerTypeConverterEntryTypeDouble = TransformerTypeConverterEntryType("double") + TransformerTypeConverterEntryTypeString = TransformerTypeConverterEntryType("string") +) + +func (TransformerTypeConverterEntryType) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerTypeConverterEntryType)(nil)).Elem() +} + +func (e TransformerTypeConverterEntryType) ToTransformerTypeConverterEntryTypeOutput() TransformerTypeConverterEntryTypeOutput { + return pulumi.ToOutput(e).(TransformerTypeConverterEntryTypeOutput) +} + +func (e TransformerTypeConverterEntryType) ToTransformerTypeConverterEntryTypeOutputWithContext(ctx context.Context) TransformerTypeConverterEntryTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(TransformerTypeConverterEntryTypeOutput) +} + +func (e TransformerTypeConverterEntryType) ToTransformerTypeConverterEntryTypePtrOutput() TransformerTypeConverterEntryTypePtrOutput { + return e.ToTransformerTypeConverterEntryTypePtrOutputWithContext(context.Background()) +} + +func (e TransformerTypeConverterEntryType) ToTransformerTypeConverterEntryTypePtrOutputWithContext(ctx context.Context) TransformerTypeConverterEntryTypePtrOutput { + return TransformerTypeConverterEntryType(e).ToTransformerTypeConverterEntryTypeOutputWithContext(ctx).ToTransformerTypeConverterEntryTypePtrOutputWithContext(ctx) +} + +func (e TransformerTypeConverterEntryType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerTypeConverterEntryType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerTypeConverterEntryType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e TransformerTypeConverterEntryType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TransformerTypeConverterEntryTypeOutput struct{ *pulumi.OutputState } + +func (TransformerTypeConverterEntryTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerTypeConverterEntryType)(nil)).Elem() +} + +func (o TransformerTypeConverterEntryTypeOutput) ToTransformerTypeConverterEntryTypeOutput() TransformerTypeConverterEntryTypeOutput { + return o +} + +func (o TransformerTypeConverterEntryTypeOutput) ToTransformerTypeConverterEntryTypeOutputWithContext(ctx context.Context) TransformerTypeConverterEntryTypeOutput { + return o +} + +func (o TransformerTypeConverterEntryTypeOutput) ToTransformerTypeConverterEntryTypePtrOutput() TransformerTypeConverterEntryTypePtrOutput { + return o.ToTransformerTypeConverterEntryTypePtrOutputWithContext(context.Background()) +} + +func (o TransformerTypeConverterEntryTypeOutput) ToTransformerTypeConverterEntryTypePtrOutputWithContext(ctx context.Context) TransformerTypeConverterEntryTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerTypeConverterEntryType) *TransformerTypeConverterEntryType { + return &v + }).(TransformerTypeConverterEntryTypePtrOutput) +} + +func (o TransformerTypeConverterEntryTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TransformerTypeConverterEntryTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerTypeConverterEntryType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TransformerTypeConverterEntryTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerTypeConverterEntryTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerTypeConverterEntryType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TransformerTypeConverterEntryTypePtrOutput struct{ *pulumi.OutputState } + +func (TransformerTypeConverterEntryTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerTypeConverterEntryType)(nil)).Elem() +} + +func (o TransformerTypeConverterEntryTypePtrOutput) ToTransformerTypeConverterEntryTypePtrOutput() TransformerTypeConverterEntryTypePtrOutput { + return o +} + +func (o TransformerTypeConverterEntryTypePtrOutput) ToTransformerTypeConverterEntryTypePtrOutputWithContext(ctx context.Context) TransformerTypeConverterEntryTypePtrOutput { + return o +} + +func (o TransformerTypeConverterEntryTypePtrOutput) Elem() TransformerTypeConverterEntryTypeOutput { + return o.ApplyT(func(v *TransformerTypeConverterEntryType) TransformerTypeConverterEntryType { + if v != nil { + return *v + } + var ret TransformerTypeConverterEntryType + return ret + }).(TransformerTypeConverterEntryTypeOutput) +} + +func (o TransformerTypeConverterEntryTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerTypeConverterEntryTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *TransformerTypeConverterEntryType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TransformerTypeConverterEntryTypeInput is an input type that accepts values of the TransformerTypeConverterEntryType enum +// A concrete instance of `TransformerTypeConverterEntryTypeInput` can be one of the following: +// +// TransformerTypeConverterEntryTypeBoolean +// TransformerTypeConverterEntryTypeInteger +// TransformerTypeConverterEntryTypeDouble +// TransformerTypeConverterEntryTypeString +type TransformerTypeConverterEntryTypeInput interface { + pulumi.Input + + ToTransformerTypeConverterEntryTypeOutput() TransformerTypeConverterEntryTypeOutput + ToTransformerTypeConverterEntryTypeOutputWithContext(context.Context) TransformerTypeConverterEntryTypeOutput +} + +var transformerTypeConverterEntryTypePtrType = reflect.TypeOf((**TransformerTypeConverterEntryType)(nil)).Elem() + +type TransformerTypeConverterEntryTypePtrInput interface { + pulumi.Input + + ToTransformerTypeConverterEntryTypePtrOutput() TransformerTypeConverterEntryTypePtrOutput + ToTransformerTypeConverterEntryTypePtrOutputWithContext(context.Context) TransformerTypeConverterEntryTypePtrOutput +} + +type transformerTypeConverterEntryTypePtr string + +func TransformerTypeConverterEntryTypePtr(v string) TransformerTypeConverterEntryTypePtrInput { + return (*transformerTypeConverterEntryTypePtr)(&v) +} + +func (*transformerTypeConverterEntryTypePtr) ElementType() reflect.Type { + return transformerTypeConverterEntryTypePtrType +} + +func (in *transformerTypeConverterEntryTypePtr) ToTransformerTypeConverterEntryTypePtrOutput() TransformerTypeConverterEntryTypePtrOutput { + return pulumi.ToOutput(in).(TransformerTypeConverterEntryTypePtrOutput) +} + +func (in *transformerTypeConverterEntryTypePtr) ToTransformerTypeConverterEntryTypePtrOutputWithContext(ctx context.Context) TransformerTypeConverterEntryTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TransformerTypeConverterEntryTypePtrOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*AccountPolicyPolicyTypeInput)(nil)).Elem(), AccountPolicyPolicyType("DATA_PROTECTION_POLICY")) pulumi.RegisterInputType(reflect.TypeOf((*AccountPolicyPolicyTypePtrInput)(nil)).Elem(), AccountPolicyPolicyType("DATA_PROTECTION_POLICY")) @@ -1335,8 +1837,14 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*LogGroupClassPtrInput)(nil)).Elem(), LogGroupClass("STANDARD")) pulumi.RegisterInputType(reflect.TypeOf((*MetricFilterMetricTransformationUnitInput)(nil)).Elem(), MetricFilterMetricTransformationUnit("Seconds")) pulumi.RegisterInputType(reflect.TypeOf((*MetricFilterMetricTransformationUnitPtrInput)(nil)).Elem(), MetricFilterMetricTransformationUnit("Seconds")) + pulumi.RegisterInputType(reflect.TypeOf((*QueryDefinitionQueryLanguageInput)(nil)).Elem(), QueryDefinitionQueryLanguage("CWLI")) + pulumi.RegisterInputType(reflect.TypeOf((*QueryDefinitionQueryLanguagePtrInput)(nil)).Elem(), QueryDefinitionQueryLanguage("CWLI")) pulumi.RegisterInputType(reflect.TypeOf((*SubscriptionFilterDistributionInput)(nil)).Elem(), SubscriptionFilterDistribution("Random")) pulumi.RegisterInputType(reflect.TypeOf((*SubscriptionFilterDistributionPtrInput)(nil)).Elem(), SubscriptionFilterDistribution("Random")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorListToMapPropertiesFlattenedElementInput)(nil)).Elem(), TransformerProcessorListToMapPropertiesFlattenedElement("first")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorListToMapPropertiesFlattenedElementPtrInput)(nil)).Elem(), TransformerProcessorListToMapPropertiesFlattenedElement("first")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerTypeConverterEntryTypeInput)(nil)).Elem(), TransformerTypeConverterEntryType("boolean")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerTypeConverterEntryTypePtrInput)(nil)).Elem(), TransformerTypeConverterEntryType("boolean")) pulumi.RegisterOutputType(AccountPolicyPolicyTypeOutput{}) pulumi.RegisterOutputType(AccountPolicyPolicyTypePtrOutput{}) pulumi.RegisterOutputType(AccountPolicyScopeOutput{}) @@ -1351,6 +1859,12 @@ func init() { pulumi.RegisterOutputType(LogGroupClassPtrOutput{}) pulumi.RegisterOutputType(MetricFilterMetricTransformationUnitOutput{}) pulumi.RegisterOutputType(MetricFilterMetricTransformationUnitPtrOutput{}) + pulumi.RegisterOutputType(QueryDefinitionQueryLanguageOutput{}) + pulumi.RegisterOutputType(QueryDefinitionQueryLanguagePtrOutput{}) pulumi.RegisterOutputType(SubscriptionFilterDistributionOutput{}) pulumi.RegisterOutputType(SubscriptionFilterDistributionPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorListToMapPropertiesFlattenedElementOutput{}) + pulumi.RegisterOutputType(TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput{}) + pulumi.RegisterOutputType(TransformerTypeConverterEntryTypeOutput{}) + pulumi.RegisterOutputType(TransformerTypeConverterEntryTypePtrOutput{}) } diff --git a/sdk/go/aws/logs/pulumiTypes.go b/sdk/go/aws/logs/pulumiTypes.go index 3dba5dcfaa..6fe9bb8796 100644 --- a/sdk/go/aws/logs/pulumiTypes.go +++ b/sdk/go/aws/logs/pulumiTypes.go @@ -712,6 +712,4399 @@ func (o ResourceConfigPropertiesOutput) OpenSearchResourceConfig() IntegrationOp }).(IntegrationOpenSearchResourceConfigPtrOutput) } +type TransformerAddKeyEntry struct { + // The key of the new entry to be added to the log event + Key string `pulumi:"key"` + // Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + OverwriteIfExists *bool `pulumi:"overwriteIfExists"` + // The value of the new entry to be added to the log event + Value string `pulumi:"value"` +} + +// TransformerAddKeyEntryInput is an input type that accepts TransformerAddKeyEntryArgs and TransformerAddKeyEntryOutput values. +// You can construct a concrete instance of `TransformerAddKeyEntryInput` via: +// +// TransformerAddKeyEntryArgs{...} +type TransformerAddKeyEntryInput interface { + pulumi.Input + + ToTransformerAddKeyEntryOutput() TransformerAddKeyEntryOutput + ToTransformerAddKeyEntryOutputWithContext(context.Context) TransformerAddKeyEntryOutput +} + +type TransformerAddKeyEntryArgs struct { + // The key of the new entry to be added to the log event + Key pulumi.StringInput `pulumi:"key"` + // Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + OverwriteIfExists pulumi.BoolPtrInput `pulumi:"overwriteIfExists"` + // The value of the new entry to be added to the log event + Value pulumi.StringInput `pulumi:"value"` +} + +func (TransformerAddKeyEntryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerAddKeyEntry)(nil)).Elem() +} + +func (i TransformerAddKeyEntryArgs) ToTransformerAddKeyEntryOutput() TransformerAddKeyEntryOutput { + return i.ToTransformerAddKeyEntryOutputWithContext(context.Background()) +} + +func (i TransformerAddKeyEntryArgs) ToTransformerAddKeyEntryOutputWithContext(ctx context.Context) TransformerAddKeyEntryOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerAddKeyEntryOutput) +} + +// TransformerAddKeyEntryArrayInput is an input type that accepts TransformerAddKeyEntryArray and TransformerAddKeyEntryArrayOutput values. +// You can construct a concrete instance of `TransformerAddKeyEntryArrayInput` via: +// +// TransformerAddKeyEntryArray{ TransformerAddKeyEntryArgs{...} } +type TransformerAddKeyEntryArrayInput interface { + pulumi.Input + + ToTransformerAddKeyEntryArrayOutput() TransformerAddKeyEntryArrayOutput + ToTransformerAddKeyEntryArrayOutputWithContext(context.Context) TransformerAddKeyEntryArrayOutput +} + +type TransformerAddKeyEntryArray []TransformerAddKeyEntryInput + +func (TransformerAddKeyEntryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerAddKeyEntry)(nil)).Elem() +} + +func (i TransformerAddKeyEntryArray) ToTransformerAddKeyEntryArrayOutput() TransformerAddKeyEntryArrayOutput { + return i.ToTransformerAddKeyEntryArrayOutputWithContext(context.Background()) +} + +func (i TransformerAddKeyEntryArray) ToTransformerAddKeyEntryArrayOutputWithContext(ctx context.Context) TransformerAddKeyEntryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerAddKeyEntryArrayOutput) +} + +type TransformerAddKeyEntryOutput struct{ *pulumi.OutputState } + +func (TransformerAddKeyEntryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerAddKeyEntry)(nil)).Elem() +} + +func (o TransformerAddKeyEntryOutput) ToTransformerAddKeyEntryOutput() TransformerAddKeyEntryOutput { + return o +} + +func (o TransformerAddKeyEntryOutput) ToTransformerAddKeyEntryOutputWithContext(ctx context.Context) TransformerAddKeyEntryOutput { + return o +} + +// The key of the new entry to be added to the log event +func (o TransformerAddKeyEntryOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v TransformerAddKeyEntry) string { return v.Key }).(pulumi.StringOutput) +} + +// Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . +func (o TransformerAddKeyEntryOutput) OverwriteIfExists() pulumi.BoolPtrOutput { + return o.ApplyT(func(v TransformerAddKeyEntry) *bool { return v.OverwriteIfExists }).(pulumi.BoolPtrOutput) +} + +// The value of the new entry to be added to the log event +func (o TransformerAddKeyEntryOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v TransformerAddKeyEntry) string { return v.Value }).(pulumi.StringOutput) +} + +type TransformerAddKeyEntryArrayOutput struct{ *pulumi.OutputState } + +func (TransformerAddKeyEntryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerAddKeyEntry)(nil)).Elem() +} + +func (o TransformerAddKeyEntryArrayOutput) ToTransformerAddKeyEntryArrayOutput() TransformerAddKeyEntryArrayOutput { + return o +} + +func (o TransformerAddKeyEntryArrayOutput) ToTransformerAddKeyEntryArrayOutputWithContext(ctx context.Context) TransformerAddKeyEntryArrayOutput { + return o +} + +func (o TransformerAddKeyEntryArrayOutput) Index(i pulumi.IntInput) TransformerAddKeyEntryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerAddKeyEntry { + return vs[0].([]TransformerAddKeyEntry)[vs[1].(int)] + }).(TransformerAddKeyEntryOutput) +} + +type TransformerCopyValueEntry struct { + OverwriteIfExists *bool `pulumi:"overwriteIfExists"` + Source string `pulumi:"source"` + Target string `pulumi:"target"` +} + +// TransformerCopyValueEntryInput is an input type that accepts TransformerCopyValueEntryArgs and TransformerCopyValueEntryOutput values. +// You can construct a concrete instance of `TransformerCopyValueEntryInput` via: +// +// TransformerCopyValueEntryArgs{...} +type TransformerCopyValueEntryInput interface { + pulumi.Input + + ToTransformerCopyValueEntryOutput() TransformerCopyValueEntryOutput + ToTransformerCopyValueEntryOutputWithContext(context.Context) TransformerCopyValueEntryOutput +} + +type TransformerCopyValueEntryArgs struct { + OverwriteIfExists pulumi.BoolPtrInput `pulumi:"overwriteIfExists"` + Source pulumi.StringInput `pulumi:"source"` + Target pulumi.StringInput `pulumi:"target"` +} + +func (TransformerCopyValueEntryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerCopyValueEntry)(nil)).Elem() +} + +func (i TransformerCopyValueEntryArgs) ToTransformerCopyValueEntryOutput() TransformerCopyValueEntryOutput { + return i.ToTransformerCopyValueEntryOutputWithContext(context.Background()) +} + +func (i TransformerCopyValueEntryArgs) ToTransformerCopyValueEntryOutputWithContext(ctx context.Context) TransformerCopyValueEntryOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerCopyValueEntryOutput) +} + +// TransformerCopyValueEntryArrayInput is an input type that accepts TransformerCopyValueEntryArray and TransformerCopyValueEntryArrayOutput values. +// You can construct a concrete instance of `TransformerCopyValueEntryArrayInput` via: +// +// TransformerCopyValueEntryArray{ TransformerCopyValueEntryArgs{...} } +type TransformerCopyValueEntryArrayInput interface { + pulumi.Input + + ToTransformerCopyValueEntryArrayOutput() TransformerCopyValueEntryArrayOutput + ToTransformerCopyValueEntryArrayOutputWithContext(context.Context) TransformerCopyValueEntryArrayOutput +} + +type TransformerCopyValueEntryArray []TransformerCopyValueEntryInput + +func (TransformerCopyValueEntryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerCopyValueEntry)(nil)).Elem() +} + +func (i TransformerCopyValueEntryArray) ToTransformerCopyValueEntryArrayOutput() TransformerCopyValueEntryArrayOutput { + return i.ToTransformerCopyValueEntryArrayOutputWithContext(context.Background()) +} + +func (i TransformerCopyValueEntryArray) ToTransformerCopyValueEntryArrayOutputWithContext(ctx context.Context) TransformerCopyValueEntryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerCopyValueEntryArrayOutput) +} + +type TransformerCopyValueEntryOutput struct{ *pulumi.OutputState } + +func (TransformerCopyValueEntryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerCopyValueEntry)(nil)).Elem() +} + +func (o TransformerCopyValueEntryOutput) ToTransformerCopyValueEntryOutput() TransformerCopyValueEntryOutput { + return o +} + +func (o TransformerCopyValueEntryOutput) ToTransformerCopyValueEntryOutputWithContext(ctx context.Context) TransformerCopyValueEntryOutput { + return o +} + +func (o TransformerCopyValueEntryOutput) OverwriteIfExists() pulumi.BoolPtrOutput { + return o.ApplyT(func(v TransformerCopyValueEntry) *bool { return v.OverwriteIfExists }).(pulumi.BoolPtrOutput) +} + +func (o TransformerCopyValueEntryOutput) Source() pulumi.StringOutput { + return o.ApplyT(func(v TransformerCopyValueEntry) string { return v.Source }).(pulumi.StringOutput) +} + +func (o TransformerCopyValueEntryOutput) Target() pulumi.StringOutput { + return o.ApplyT(func(v TransformerCopyValueEntry) string { return v.Target }).(pulumi.StringOutput) +} + +type TransformerCopyValueEntryArrayOutput struct{ *pulumi.OutputState } + +func (TransformerCopyValueEntryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerCopyValueEntry)(nil)).Elem() +} + +func (o TransformerCopyValueEntryArrayOutput) ToTransformerCopyValueEntryArrayOutput() TransformerCopyValueEntryArrayOutput { + return o +} + +func (o TransformerCopyValueEntryArrayOutput) ToTransformerCopyValueEntryArrayOutputWithContext(ctx context.Context) TransformerCopyValueEntryArrayOutput { + return o +} + +func (o TransformerCopyValueEntryArrayOutput) Index(i pulumi.IntInput) TransformerCopyValueEntryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerCopyValueEntry { + return vs[0].([]TransformerCopyValueEntry)[vs[1].(int)] + }).(TransformerCopyValueEntryOutput) +} + +type TransformerMoveKeyEntry struct { + OverwriteIfExists *bool `pulumi:"overwriteIfExists"` + Source string `pulumi:"source"` + Target string `pulumi:"target"` +} + +// TransformerMoveKeyEntryInput is an input type that accepts TransformerMoveKeyEntryArgs and TransformerMoveKeyEntryOutput values. +// You can construct a concrete instance of `TransformerMoveKeyEntryInput` via: +// +// TransformerMoveKeyEntryArgs{...} +type TransformerMoveKeyEntryInput interface { + pulumi.Input + + ToTransformerMoveKeyEntryOutput() TransformerMoveKeyEntryOutput + ToTransformerMoveKeyEntryOutputWithContext(context.Context) TransformerMoveKeyEntryOutput +} + +type TransformerMoveKeyEntryArgs struct { + OverwriteIfExists pulumi.BoolPtrInput `pulumi:"overwriteIfExists"` + Source pulumi.StringInput `pulumi:"source"` + Target pulumi.StringInput `pulumi:"target"` +} + +func (TransformerMoveKeyEntryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerMoveKeyEntry)(nil)).Elem() +} + +func (i TransformerMoveKeyEntryArgs) ToTransformerMoveKeyEntryOutput() TransformerMoveKeyEntryOutput { + return i.ToTransformerMoveKeyEntryOutputWithContext(context.Background()) +} + +func (i TransformerMoveKeyEntryArgs) ToTransformerMoveKeyEntryOutputWithContext(ctx context.Context) TransformerMoveKeyEntryOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerMoveKeyEntryOutput) +} + +// TransformerMoveKeyEntryArrayInput is an input type that accepts TransformerMoveKeyEntryArray and TransformerMoveKeyEntryArrayOutput values. +// You can construct a concrete instance of `TransformerMoveKeyEntryArrayInput` via: +// +// TransformerMoveKeyEntryArray{ TransformerMoveKeyEntryArgs{...} } +type TransformerMoveKeyEntryArrayInput interface { + pulumi.Input + + ToTransformerMoveKeyEntryArrayOutput() TransformerMoveKeyEntryArrayOutput + ToTransformerMoveKeyEntryArrayOutputWithContext(context.Context) TransformerMoveKeyEntryArrayOutput +} + +type TransformerMoveKeyEntryArray []TransformerMoveKeyEntryInput + +func (TransformerMoveKeyEntryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerMoveKeyEntry)(nil)).Elem() +} + +func (i TransformerMoveKeyEntryArray) ToTransformerMoveKeyEntryArrayOutput() TransformerMoveKeyEntryArrayOutput { + return i.ToTransformerMoveKeyEntryArrayOutputWithContext(context.Background()) +} + +func (i TransformerMoveKeyEntryArray) ToTransformerMoveKeyEntryArrayOutputWithContext(ctx context.Context) TransformerMoveKeyEntryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerMoveKeyEntryArrayOutput) +} + +type TransformerMoveKeyEntryOutput struct{ *pulumi.OutputState } + +func (TransformerMoveKeyEntryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerMoveKeyEntry)(nil)).Elem() +} + +func (o TransformerMoveKeyEntryOutput) ToTransformerMoveKeyEntryOutput() TransformerMoveKeyEntryOutput { + return o +} + +func (o TransformerMoveKeyEntryOutput) ToTransformerMoveKeyEntryOutputWithContext(ctx context.Context) TransformerMoveKeyEntryOutput { + return o +} + +func (o TransformerMoveKeyEntryOutput) OverwriteIfExists() pulumi.BoolPtrOutput { + return o.ApplyT(func(v TransformerMoveKeyEntry) *bool { return v.OverwriteIfExists }).(pulumi.BoolPtrOutput) +} + +func (o TransformerMoveKeyEntryOutput) Source() pulumi.StringOutput { + return o.ApplyT(func(v TransformerMoveKeyEntry) string { return v.Source }).(pulumi.StringOutput) +} + +func (o TransformerMoveKeyEntryOutput) Target() pulumi.StringOutput { + return o.ApplyT(func(v TransformerMoveKeyEntry) string { return v.Target }).(pulumi.StringOutput) +} + +type TransformerMoveKeyEntryArrayOutput struct{ *pulumi.OutputState } + +func (TransformerMoveKeyEntryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerMoveKeyEntry)(nil)).Elem() +} + +func (o TransformerMoveKeyEntryArrayOutput) ToTransformerMoveKeyEntryArrayOutput() TransformerMoveKeyEntryArrayOutput { + return o +} + +func (o TransformerMoveKeyEntryArrayOutput) ToTransformerMoveKeyEntryArrayOutputWithContext(ctx context.Context) TransformerMoveKeyEntryArrayOutput { + return o +} + +func (o TransformerMoveKeyEntryArrayOutput) Index(i pulumi.IntInput) TransformerMoveKeyEntryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerMoveKeyEntry { + return vs[0].([]TransformerMoveKeyEntry)[vs[1].(int)] + }).(TransformerMoveKeyEntryOutput) +} + +type TransformerParseCloudfront struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source *string `pulumi:"source"` +} + +// TransformerParseCloudfrontInput is an input type that accepts TransformerParseCloudfrontArgs and TransformerParseCloudfrontOutput values. +// You can construct a concrete instance of `TransformerParseCloudfrontInput` via: +// +// TransformerParseCloudfrontArgs{...} +type TransformerParseCloudfrontInput interface { + pulumi.Input + + ToTransformerParseCloudfrontOutput() TransformerParseCloudfrontOutput + ToTransformerParseCloudfrontOutputWithContext(context.Context) TransformerParseCloudfrontOutput +} + +type TransformerParseCloudfrontArgs struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerParseCloudfrontArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseCloudfront)(nil)).Elem() +} + +func (i TransformerParseCloudfrontArgs) ToTransformerParseCloudfrontOutput() TransformerParseCloudfrontOutput { + return i.ToTransformerParseCloudfrontOutputWithContext(context.Background()) +} + +func (i TransformerParseCloudfrontArgs) ToTransformerParseCloudfrontOutputWithContext(ctx context.Context) TransformerParseCloudfrontOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseCloudfrontOutput) +} + +func (i TransformerParseCloudfrontArgs) ToTransformerParseCloudfrontPtrOutput() TransformerParseCloudfrontPtrOutput { + return i.ToTransformerParseCloudfrontPtrOutputWithContext(context.Background()) +} + +func (i TransformerParseCloudfrontArgs) ToTransformerParseCloudfrontPtrOutputWithContext(ctx context.Context) TransformerParseCloudfrontPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseCloudfrontOutput).ToTransformerParseCloudfrontPtrOutputWithContext(ctx) +} + +// TransformerParseCloudfrontPtrInput is an input type that accepts TransformerParseCloudfrontArgs, TransformerParseCloudfrontPtr and TransformerParseCloudfrontPtrOutput values. +// You can construct a concrete instance of `TransformerParseCloudfrontPtrInput` via: +// +// TransformerParseCloudfrontArgs{...} +// +// or: +// +// nil +type TransformerParseCloudfrontPtrInput interface { + pulumi.Input + + ToTransformerParseCloudfrontPtrOutput() TransformerParseCloudfrontPtrOutput + ToTransformerParseCloudfrontPtrOutputWithContext(context.Context) TransformerParseCloudfrontPtrOutput +} + +type transformerParseCloudfrontPtrType TransformerParseCloudfrontArgs + +func TransformerParseCloudfrontPtr(v *TransformerParseCloudfrontArgs) TransformerParseCloudfrontPtrInput { + return (*transformerParseCloudfrontPtrType)(v) +} + +func (*transformerParseCloudfrontPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseCloudfront)(nil)).Elem() +} + +func (i *transformerParseCloudfrontPtrType) ToTransformerParseCloudfrontPtrOutput() TransformerParseCloudfrontPtrOutput { + return i.ToTransformerParseCloudfrontPtrOutputWithContext(context.Background()) +} + +func (i *transformerParseCloudfrontPtrType) ToTransformerParseCloudfrontPtrOutputWithContext(ctx context.Context) TransformerParseCloudfrontPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseCloudfrontPtrOutput) +} + +type TransformerParseCloudfrontOutput struct{ *pulumi.OutputState } + +func (TransformerParseCloudfrontOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseCloudfront)(nil)).Elem() +} + +func (o TransformerParseCloudfrontOutput) ToTransformerParseCloudfrontOutput() TransformerParseCloudfrontOutput { + return o +} + +func (o TransformerParseCloudfrontOutput) ToTransformerParseCloudfrontOutputWithContext(ctx context.Context) TransformerParseCloudfrontOutput { + return o +} + +func (o TransformerParseCloudfrontOutput) ToTransformerParseCloudfrontPtrOutput() TransformerParseCloudfrontPtrOutput { + return o.ToTransformerParseCloudfrontPtrOutputWithContext(context.Background()) +} + +func (o TransformerParseCloudfrontOutput) ToTransformerParseCloudfrontPtrOutputWithContext(ctx context.Context) TransformerParseCloudfrontPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerParseCloudfront) *TransformerParseCloudfront { + return &v + }).(TransformerParseCloudfrontPtrOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseCloudfrontOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerParseCloudfront) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerParseCloudfrontPtrOutput struct{ *pulumi.OutputState } + +func (TransformerParseCloudfrontPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseCloudfront)(nil)).Elem() +} + +func (o TransformerParseCloudfrontPtrOutput) ToTransformerParseCloudfrontPtrOutput() TransformerParseCloudfrontPtrOutput { + return o +} + +func (o TransformerParseCloudfrontPtrOutput) ToTransformerParseCloudfrontPtrOutputWithContext(ctx context.Context) TransformerParseCloudfrontPtrOutput { + return o +} + +func (o TransformerParseCloudfrontPtrOutput) Elem() TransformerParseCloudfrontOutput { + return o.ApplyT(func(v *TransformerParseCloudfront) TransformerParseCloudfront { + if v != nil { + return *v + } + var ret TransformerParseCloudfront + return ret + }).(TransformerParseCloudfrontOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseCloudfrontPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerParseCloudfront) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +type TransformerParsePostgres struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source *string `pulumi:"source"` +} + +// TransformerParsePostgresInput is an input type that accepts TransformerParsePostgresArgs and TransformerParsePostgresOutput values. +// You can construct a concrete instance of `TransformerParsePostgresInput` via: +// +// TransformerParsePostgresArgs{...} +type TransformerParsePostgresInput interface { + pulumi.Input + + ToTransformerParsePostgresOutput() TransformerParsePostgresOutput + ToTransformerParsePostgresOutputWithContext(context.Context) TransformerParsePostgresOutput +} + +type TransformerParsePostgresArgs struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerParsePostgresArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParsePostgres)(nil)).Elem() +} + +func (i TransformerParsePostgresArgs) ToTransformerParsePostgresOutput() TransformerParsePostgresOutput { + return i.ToTransformerParsePostgresOutputWithContext(context.Background()) +} + +func (i TransformerParsePostgresArgs) ToTransformerParsePostgresOutputWithContext(ctx context.Context) TransformerParsePostgresOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParsePostgresOutput) +} + +func (i TransformerParsePostgresArgs) ToTransformerParsePostgresPtrOutput() TransformerParsePostgresPtrOutput { + return i.ToTransformerParsePostgresPtrOutputWithContext(context.Background()) +} + +func (i TransformerParsePostgresArgs) ToTransformerParsePostgresPtrOutputWithContext(ctx context.Context) TransformerParsePostgresPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParsePostgresOutput).ToTransformerParsePostgresPtrOutputWithContext(ctx) +} + +// TransformerParsePostgresPtrInput is an input type that accepts TransformerParsePostgresArgs, TransformerParsePostgresPtr and TransformerParsePostgresPtrOutput values. +// You can construct a concrete instance of `TransformerParsePostgresPtrInput` via: +// +// TransformerParsePostgresArgs{...} +// +// or: +// +// nil +type TransformerParsePostgresPtrInput interface { + pulumi.Input + + ToTransformerParsePostgresPtrOutput() TransformerParsePostgresPtrOutput + ToTransformerParsePostgresPtrOutputWithContext(context.Context) TransformerParsePostgresPtrOutput +} + +type transformerParsePostgresPtrType TransformerParsePostgresArgs + +func TransformerParsePostgresPtr(v *TransformerParsePostgresArgs) TransformerParsePostgresPtrInput { + return (*transformerParsePostgresPtrType)(v) +} + +func (*transformerParsePostgresPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParsePostgres)(nil)).Elem() +} + +func (i *transformerParsePostgresPtrType) ToTransformerParsePostgresPtrOutput() TransformerParsePostgresPtrOutput { + return i.ToTransformerParsePostgresPtrOutputWithContext(context.Background()) +} + +func (i *transformerParsePostgresPtrType) ToTransformerParsePostgresPtrOutputWithContext(ctx context.Context) TransformerParsePostgresPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParsePostgresPtrOutput) +} + +type TransformerParsePostgresOutput struct{ *pulumi.OutputState } + +func (TransformerParsePostgresOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParsePostgres)(nil)).Elem() +} + +func (o TransformerParsePostgresOutput) ToTransformerParsePostgresOutput() TransformerParsePostgresOutput { + return o +} + +func (o TransformerParsePostgresOutput) ToTransformerParsePostgresOutputWithContext(ctx context.Context) TransformerParsePostgresOutput { + return o +} + +func (o TransformerParsePostgresOutput) ToTransformerParsePostgresPtrOutput() TransformerParsePostgresPtrOutput { + return o.ToTransformerParsePostgresPtrOutputWithContext(context.Background()) +} + +func (o TransformerParsePostgresOutput) ToTransformerParsePostgresPtrOutputWithContext(ctx context.Context) TransformerParsePostgresPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerParsePostgres) *TransformerParsePostgres { + return &v + }).(TransformerParsePostgresPtrOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParsePostgresOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerParsePostgres) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerParsePostgresPtrOutput struct{ *pulumi.OutputState } + +func (TransformerParsePostgresPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParsePostgres)(nil)).Elem() +} + +func (o TransformerParsePostgresPtrOutput) ToTransformerParsePostgresPtrOutput() TransformerParsePostgresPtrOutput { + return o +} + +func (o TransformerParsePostgresPtrOutput) ToTransformerParsePostgresPtrOutputWithContext(ctx context.Context) TransformerParsePostgresPtrOutput { + return o +} + +func (o TransformerParsePostgresPtrOutput) Elem() TransformerParsePostgresOutput { + return o.ApplyT(func(v *TransformerParsePostgres) TransformerParsePostgres { + if v != nil { + return *v + } + var ret TransformerParsePostgres + return ret + }).(TransformerParsePostgresOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParsePostgresPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerParsePostgres) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +type TransformerParseRoute53 struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source *string `pulumi:"source"` +} + +// TransformerParseRoute53Input is an input type that accepts TransformerParseRoute53Args and TransformerParseRoute53Output values. +// You can construct a concrete instance of `TransformerParseRoute53Input` via: +// +// TransformerParseRoute53Args{...} +type TransformerParseRoute53Input interface { + pulumi.Input + + ToTransformerParseRoute53Output() TransformerParseRoute53Output + ToTransformerParseRoute53OutputWithContext(context.Context) TransformerParseRoute53Output +} + +type TransformerParseRoute53Args struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerParseRoute53Args) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseRoute53)(nil)).Elem() +} + +func (i TransformerParseRoute53Args) ToTransformerParseRoute53Output() TransformerParseRoute53Output { + return i.ToTransformerParseRoute53OutputWithContext(context.Background()) +} + +func (i TransformerParseRoute53Args) ToTransformerParseRoute53OutputWithContext(ctx context.Context) TransformerParseRoute53Output { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseRoute53Output) +} + +func (i TransformerParseRoute53Args) ToTransformerParseRoute53PtrOutput() TransformerParseRoute53PtrOutput { + return i.ToTransformerParseRoute53PtrOutputWithContext(context.Background()) +} + +func (i TransformerParseRoute53Args) ToTransformerParseRoute53PtrOutputWithContext(ctx context.Context) TransformerParseRoute53PtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseRoute53Output).ToTransformerParseRoute53PtrOutputWithContext(ctx) +} + +// TransformerParseRoute53PtrInput is an input type that accepts TransformerParseRoute53Args, TransformerParseRoute53Ptr and TransformerParseRoute53PtrOutput values. +// You can construct a concrete instance of `TransformerParseRoute53PtrInput` via: +// +// TransformerParseRoute53Args{...} +// +// or: +// +// nil +type TransformerParseRoute53PtrInput interface { + pulumi.Input + + ToTransformerParseRoute53PtrOutput() TransformerParseRoute53PtrOutput + ToTransformerParseRoute53PtrOutputWithContext(context.Context) TransformerParseRoute53PtrOutput +} + +type transformerParseRoute53PtrType TransformerParseRoute53Args + +func TransformerParseRoute53Ptr(v *TransformerParseRoute53Args) TransformerParseRoute53PtrInput { + return (*transformerParseRoute53PtrType)(v) +} + +func (*transformerParseRoute53PtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseRoute53)(nil)).Elem() +} + +func (i *transformerParseRoute53PtrType) ToTransformerParseRoute53PtrOutput() TransformerParseRoute53PtrOutput { + return i.ToTransformerParseRoute53PtrOutputWithContext(context.Background()) +} + +func (i *transformerParseRoute53PtrType) ToTransformerParseRoute53PtrOutputWithContext(ctx context.Context) TransformerParseRoute53PtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseRoute53PtrOutput) +} + +type TransformerParseRoute53Output struct{ *pulumi.OutputState } + +func (TransformerParseRoute53Output) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseRoute53)(nil)).Elem() +} + +func (o TransformerParseRoute53Output) ToTransformerParseRoute53Output() TransformerParseRoute53Output { + return o +} + +func (o TransformerParseRoute53Output) ToTransformerParseRoute53OutputWithContext(ctx context.Context) TransformerParseRoute53Output { + return o +} + +func (o TransformerParseRoute53Output) ToTransformerParseRoute53PtrOutput() TransformerParseRoute53PtrOutput { + return o.ToTransformerParseRoute53PtrOutputWithContext(context.Background()) +} + +func (o TransformerParseRoute53Output) ToTransformerParseRoute53PtrOutputWithContext(ctx context.Context) TransformerParseRoute53PtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerParseRoute53) *TransformerParseRoute53 { + return &v + }).(TransformerParseRoute53PtrOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseRoute53Output) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerParseRoute53) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerParseRoute53PtrOutput struct{ *pulumi.OutputState } + +func (TransformerParseRoute53PtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseRoute53)(nil)).Elem() +} + +func (o TransformerParseRoute53PtrOutput) ToTransformerParseRoute53PtrOutput() TransformerParseRoute53PtrOutput { + return o +} + +func (o TransformerParseRoute53PtrOutput) ToTransformerParseRoute53PtrOutputWithContext(ctx context.Context) TransformerParseRoute53PtrOutput { + return o +} + +func (o TransformerParseRoute53PtrOutput) Elem() TransformerParseRoute53Output { + return o.ApplyT(func(v *TransformerParseRoute53) TransformerParseRoute53 { + if v != nil { + return *v + } + var ret TransformerParseRoute53 + return ret + }).(TransformerParseRoute53Output) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseRoute53PtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerParseRoute53) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +type TransformerParseVpc struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source *string `pulumi:"source"` +} + +// TransformerParseVpcInput is an input type that accepts TransformerParseVpcArgs and TransformerParseVpcOutput values. +// You can construct a concrete instance of `TransformerParseVpcInput` via: +// +// TransformerParseVpcArgs{...} +type TransformerParseVpcInput interface { + pulumi.Input + + ToTransformerParseVpcOutput() TransformerParseVpcOutput + ToTransformerParseVpcOutputWithContext(context.Context) TransformerParseVpcOutput +} + +type TransformerParseVpcArgs struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerParseVpcArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseVpc)(nil)).Elem() +} + +func (i TransformerParseVpcArgs) ToTransformerParseVpcOutput() TransformerParseVpcOutput { + return i.ToTransformerParseVpcOutputWithContext(context.Background()) +} + +func (i TransformerParseVpcArgs) ToTransformerParseVpcOutputWithContext(ctx context.Context) TransformerParseVpcOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseVpcOutput) +} + +func (i TransformerParseVpcArgs) ToTransformerParseVpcPtrOutput() TransformerParseVpcPtrOutput { + return i.ToTransformerParseVpcPtrOutputWithContext(context.Background()) +} + +func (i TransformerParseVpcArgs) ToTransformerParseVpcPtrOutputWithContext(ctx context.Context) TransformerParseVpcPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseVpcOutput).ToTransformerParseVpcPtrOutputWithContext(ctx) +} + +// TransformerParseVpcPtrInput is an input type that accepts TransformerParseVpcArgs, TransformerParseVpcPtr and TransformerParseVpcPtrOutput values. +// You can construct a concrete instance of `TransformerParseVpcPtrInput` via: +// +// TransformerParseVpcArgs{...} +// +// or: +// +// nil +type TransformerParseVpcPtrInput interface { + pulumi.Input + + ToTransformerParseVpcPtrOutput() TransformerParseVpcPtrOutput + ToTransformerParseVpcPtrOutputWithContext(context.Context) TransformerParseVpcPtrOutput +} + +type transformerParseVpcPtrType TransformerParseVpcArgs + +func TransformerParseVpcPtr(v *TransformerParseVpcArgs) TransformerParseVpcPtrInput { + return (*transformerParseVpcPtrType)(v) +} + +func (*transformerParseVpcPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseVpc)(nil)).Elem() +} + +func (i *transformerParseVpcPtrType) ToTransformerParseVpcPtrOutput() TransformerParseVpcPtrOutput { + return i.ToTransformerParseVpcPtrOutputWithContext(context.Background()) +} + +func (i *transformerParseVpcPtrType) ToTransformerParseVpcPtrOutputWithContext(ctx context.Context) TransformerParseVpcPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseVpcPtrOutput) +} + +type TransformerParseVpcOutput struct{ *pulumi.OutputState } + +func (TransformerParseVpcOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseVpc)(nil)).Elem() +} + +func (o TransformerParseVpcOutput) ToTransformerParseVpcOutput() TransformerParseVpcOutput { + return o +} + +func (o TransformerParseVpcOutput) ToTransformerParseVpcOutputWithContext(ctx context.Context) TransformerParseVpcOutput { + return o +} + +func (o TransformerParseVpcOutput) ToTransformerParseVpcPtrOutput() TransformerParseVpcPtrOutput { + return o.ToTransformerParseVpcPtrOutputWithContext(context.Background()) +} + +func (o TransformerParseVpcOutput) ToTransformerParseVpcPtrOutputWithContext(ctx context.Context) TransformerParseVpcPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerParseVpc) *TransformerParseVpc { + return &v + }).(TransformerParseVpcPtrOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseVpcOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerParseVpc) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerParseVpcPtrOutput struct{ *pulumi.OutputState } + +func (TransformerParseVpcPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseVpc)(nil)).Elem() +} + +func (o TransformerParseVpcPtrOutput) ToTransformerParseVpcPtrOutput() TransformerParseVpcPtrOutput { + return o +} + +func (o TransformerParseVpcPtrOutput) ToTransformerParseVpcPtrOutputWithContext(ctx context.Context) TransformerParseVpcPtrOutput { + return o +} + +func (o TransformerParseVpcPtrOutput) Elem() TransformerParseVpcOutput { + return o.ApplyT(func(v *TransformerParseVpc) TransformerParseVpc { + if v != nil { + return *v + } + var ret TransformerParseVpc + return ret + }).(TransformerParseVpcOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseVpcPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerParseVpc) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +type TransformerParseWaf struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source *string `pulumi:"source"` +} + +// TransformerParseWafInput is an input type that accepts TransformerParseWafArgs and TransformerParseWafOutput values. +// You can construct a concrete instance of `TransformerParseWafInput` via: +// +// TransformerParseWafArgs{...} +type TransformerParseWafInput interface { + pulumi.Input + + ToTransformerParseWafOutput() TransformerParseWafOutput + ToTransformerParseWafOutputWithContext(context.Context) TransformerParseWafOutput +} + +type TransformerParseWafArgs struct { + // Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerParseWafArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseWaf)(nil)).Elem() +} + +func (i TransformerParseWafArgs) ToTransformerParseWafOutput() TransformerParseWafOutput { + return i.ToTransformerParseWafOutputWithContext(context.Background()) +} + +func (i TransformerParseWafArgs) ToTransformerParseWafOutputWithContext(ctx context.Context) TransformerParseWafOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseWafOutput) +} + +func (i TransformerParseWafArgs) ToTransformerParseWafPtrOutput() TransformerParseWafPtrOutput { + return i.ToTransformerParseWafPtrOutputWithContext(context.Background()) +} + +func (i TransformerParseWafArgs) ToTransformerParseWafPtrOutputWithContext(ctx context.Context) TransformerParseWafPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseWafOutput).ToTransformerParseWafPtrOutputWithContext(ctx) +} + +// TransformerParseWafPtrInput is an input type that accepts TransformerParseWafArgs, TransformerParseWafPtr and TransformerParseWafPtrOutput values. +// You can construct a concrete instance of `TransformerParseWafPtrInput` via: +// +// TransformerParseWafArgs{...} +// +// or: +// +// nil +type TransformerParseWafPtrInput interface { + pulumi.Input + + ToTransformerParseWafPtrOutput() TransformerParseWafPtrOutput + ToTransformerParseWafPtrOutputWithContext(context.Context) TransformerParseWafPtrOutput +} + +type transformerParseWafPtrType TransformerParseWafArgs + +func TransformerParseWafPtr(v *TransformerParseWafArgs) TransformerParseWafPtrInput { + return (*transformerParseWafPtrType)(v) +} + +func (*transformerParseWafPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseWaf)(nil)).Elem() +} + +func (i *transformerParseWafPtrType) ToTransformerParseWafPtrOutput() TransformerParseWafPtrOutput { + return i.ToTransformerParseWafPtrOutputWithContext(context.Background()) +} + +func (i *transformerParseWafPtrType) ToTransformerParseWafPtrOutputWithContext(ctx context.Context) TransformerParseWafPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerParseWafPtrOutput) +} + +type TransformerParseWafOutput struct{ *pulumi.OutputState } + +func (TransformerParseWafOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerParseWaf)(nil)).Elem() +} + +func (o TransformerParseWafOutput) ToTransformerParseWafOutput() TransformerParseWafOutput { + return o +} + +func (o TransformerParseWafOutput) ToTransformerParseWafOutputWithContext(ctx context.Context) TransformerParseWafOutput { + return o +} + +func (o TransformerParseWafOutput) ToTransformerParseWafPtrOutput() TransformerParseWafPtrOutput { + return o.ToTransformerParseWafPtrOutputWithContext(context.Background()) +} + +func (o TransformerParseWafOutput) ToTransformerParseWafPtrOutputWithContext(ctx context.Context) TransformerParseWafPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerParseWaf) *TransformerParseWaf { + return &v + }).(TransformerParseWafPtrOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseWafOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerParseWaf) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerParseWafPtrOutput struct{ *pulumi.OutputState } + +func (TransformerParseWafPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerParseWaf)(nil)).Elem() +} + +func (o TransformerParseWafPtrOutput) ToTransformerParseWafPtrOutput() TransformerParseWafPtrOutput { + return o +} + +func (o TransformerParseWafPtrOutput) ToTransformerParseWafPtrOutputWithContext(ctx context.Context) TransformerParseWafPtrOutput { + return o +} + +func (o TransformerParseWafPtrOutput) Elem() TransformerParseWafOutput { + return o.ApplyT(func(v *TransformerParseWaf) TransformerParseWaf { + if v != nil { + return *v + } + var ret TransformerParseWaf + return ret + }).(TransformerParseWafOutput) +} + +// Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . +func (o TransformerParseWafPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerParseWaf) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +// Individual processor configuration +type TransformerProcessor struct { + // Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + AddKeys *TransformerProcessorAddKeysProperties `pulumi:"addKeys"` + // Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + CopyValue *TransformerProcessorCopyValueProperties `pulumi:"copyValue"` + // Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + Csv *TransformerProcessorCsvProperties `pulumi:"csv"` + // Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + DateTimeConverter *TransformerProcessorDateTimeConverterProperties `pulumi:"dateTimeConverter"` + // Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + DeleteKeys *TransformerProcessorDeleteKeysProperties `pulumi:"deleteKeys"` + // Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + Grok *TransformerProcessorGrokProperties `pulumi:"grok"` + // Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + ListToMap *TransformerProcessorListToMapProperties `pulumi:"listToMap"` + // Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + LowerCaseString *TransformerProcessorLowerCaseStringProperties `pulumi:"lowerCaseString"` + // Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + MoveKeys *TransformerProcessorMoveKeysProperties `pulumi:"moveKeys"` + // Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseCloudfront *TransformerParseCloudfront `pulumi:"parseCloudfront"` + // Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + ParseJson *TransformerProcessorParseJsonProperties `pulumi:"parseJson"` + // Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + ParseKeyValue *TransformerProcessorParseKeyValueProperties `pulumi:"parseKeyValue"` + // Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParsePostgres *TransformerParsePostgres `pulumi:"parsePostgres"` + // Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseRoute53 *TransformerParseRoute53 `pulumi:"parseRoute53"` + // Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseVpc *TransformerParseVpc `pulumi:"parseVpc"` + // Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseWaf *TransformerParseWaf `pulumi:"parseWaf"` + // Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + RenameKeys *TransformerProcessorRenameKeysProperties `pulumi:"renameKeys"` + // Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + SplitString *TransformerProcessorSplitStringProperties `pulumi:"splitString"` + // Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + SubstituteString *TransformerProcessorSubstituteStringProperties `pulumi:"substituteString"` + // Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + TrimString *TransformerProcessorTrimStringProperties `pulumi:"trimString"` + // Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + TypeConverter *TransformerProcessorTypeConverterProperties `pulumi:"typeConverter"` + // Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + UpperCaseString *TransformerProcessorUpperCaseStringProperties `pulumi:"upperCaseString"` +} + +// TransformerProcessorInput is an input type that accepts TransformerProcessorArgs and TransformerProcessorOutput values. +// You can construct a concrete instance of `TransformerProcessorInput` via: +// +// TransformerProcessorArgs{...} +type TransformerProcessorInput interface { + pulumi.Input + + ToTransformerProcessorOutput() TransformerProcessorOutput + ToTransformerProcessorOutputWithContext(context.Context) TransformerProcessorOutput +} + +// Individual processor configuration +type TransformerProcessorArgs struct { + // Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + AddKeys TransformerProcessorAddKeysPropertiesPtrInput `pulumi:"addKeys"` + // Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + CopyValue TransformerProcessorCopyValuePropertiesPtrInput `pulumi:"copyValue"` + // Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + Csv TransformerProcessorCsvPropertiesPtrInput `pulumi:"csv"` + // Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + DateTimeConverter TransformerProcessorDateTimeConverterPropertiesPtrInput `pulumi:"dateTimeConverter"` + // Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + DeleteKeys TransformerProcessorDeleteKeysPropertiesPtrInput `pulumi:"deleteKeys"` + // Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + Grok TransformerProcessorGrokPropertiesPtrInput `pulumi:"grok"` + // Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + ListToMap TransformerProcessorListToMapPropertiesPtrInput `pulumi:"listToMap"` + // Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + LowerCaseString TransformerProcessorLowerCaseStringPropertiesPtrInput `pulumi:"lowerCaseString"` + // Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + MoveKeys TransformerProcessorMoveKeysPropertiesPtrInput `pulumi:"moveKeys"` + // Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseCloudfront TransformerParseCloudfrontPtrInput `pulumi:"parseCloudfront"` + // Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + ParseJson TransformerProcessorParseJsonPropertiesPtrInput `pulumi:"parseJson"` + // Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + ParseKeyValue TransformerProcessorParseKeyValuePropertiesPtrInput `pulumi:"parseKeyValue"` + // Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParsePostgres TransformerParsePostgresPtrInput `pulumi:"parsePostgres"` + // Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseRoute53 TransformerParseRoute53PtrInput `pulumi:"parseRoute53"` + // Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseVpc TransformerParseVpcPtrInput `pulumi:"parseVpc"` + // Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + // + // If you use this processor, it must be the first processor in your transformer. + ParseWaf TransformerParseWafPtrInput `pulumi:"parseWaf"` + // Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + RenameKeys TransformerProcessorRenameKeysPropertiesPtrInput `pulumi:"renameKeys"` + // Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + SplitString TransformerProcessorSplitStringPropertiesPtrInput `pulumi:"splitString"` + // Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + SubstituteString TransformerProcessorSubstituteStringPropertiesPtrInput `pulumi:"substituteString"` + // Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + TrimString TransformerProcessorTrimStringPropertiesPtrInput `pulumi:"trimString"` + // Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + TypeConverter TransformerProcessorTypeConverterPropertiesPtrInput `pulumi:"typeConverter"` + // Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + UpperCaseString TransformerProcessorUpperCaseStringPropertiesPtrInput `pulumi:"upperCaseString"` +} + +func (TransformerProcessorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessor)(nil)).Elem() +} + +func (i TransformerProcessorArgs) ToTransformerProcessorOutput() TransformerProcessorOutput { + return i.ToTransformerProcessorOutputWithContext(context.Background()) +} + +func (i TransformerProcessorArgs) ToTransformerProcessorOutputWithContext(ctx context.Context) TransformerProcessorOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorOutput) +} + +// TransformerProcessorArrayInput is an input type that accepts TransformerProcessorArray and TransformerProcessorArrayOutput values. +// You can construct a concrete instance of `TransformerProcessorArrayInput` via: +// +// TransformerProcessorArray{ TransformerProcessorArgs{...} } +type TransformerProcessorArrayInput interface { + pulumi.Input + + ToTransformerProcessorArrayOutput() TransformerProcessorArrayOutput + ToTransformerProcessorArrayOutputWithContext(context.Context) TransformerProcessorArrayOutput +} + +type TransformerProcessorArray []TransformerProcessorInput + +func (TransformerProcessorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerProcessor)(nil)).Elem() +} + +func (i TransformerProcessorArray) ToTransformerProcessorArrayOutput() TransformerProcessorArrayOutput { + return i.ToTransformerProcessorArrayOutputWithContext(context.Background()) +} + +func (i TransformerProcessorArray) ToTransformerProcessorArrayOutputWithContext(ctx context.Context) TransformerProcessorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorArrayOutput) +} + +// Individual processor configuration +type TransformerProcessorOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessor)(nil)).Elem() +} + +func (o TransformerProcessorOutput) ToTransformerProcessorOutput() TransformerProcessorOutput { + return o +} + +func (o TransformerProcessorOutput) ToTransformerProcessorOutputWithContext(ctx context.Context) TransformerProcessorOutput { + return o +} + +// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. +func (o TransformerProcessorOutput) AddKeys() TransformerProcessorAddKeysPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorAddKeysProperties { return v.AddKeys }).(TransformerProcessorAddKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. +func (o TransformerProcessorOutput) CopyValue() TransformerProcessorCopyValuePropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorCopyValueProperties { return v.CopyValue }).(TransformerProcessorCopyValuePropertiesPtrOutput) +} + +// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. +func (o TransformerProcessorOutput) Csv() TransformerProcessorCsvPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorCsvProperties { return v.Csv }).(TransformerProcessorCsvPropertiesPtrOutput) +} + +// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. +func (o TransformerProcessorOutput) DateTimeConverter() TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorDateTimeConverterProperties { + return v.DateTimeConverter + }).(TransformerProcessorDateTimeConverterPropertiesPtrOutput) +} + +// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. +func (o TransformerProcessorOutput) DeleteKeys() TransformerProcessorDeleteKeysPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorDeleteKeysProperties { return v.DeleteKeys }).(TransformerProcessorDeleteKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. +func (o TransformerProcessorOutput) Grok() TransformerProcessorGrokPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorGrokProperties { return v.Grok }).(TransformerProcessorGrokPropertiesPtrOutput) +} + +// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. +func (o TransformerProcessorOutput) ListToMap() TransformerProcessorListToMapPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorListToMapProperties { return v.ListToMap }).(TransformerProcessorListToMapPropertiesPtrOutput) +} + +// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. +func (o TransformerProcessorOutput) LowerCaseString() TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorLowerCaseStringProperties { return v.LowerCaseString }).(TransformerProcessorLowerCaseStringPropertiesPtrOutput) +} + +// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. +func (o TransformerProcessorOutput) MoveKeys() TransformerProcessorMoveKeysPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorMoveKeysProperties { return v.MoveKeys }).(TransformerProcessorMoveKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. +// +// If you use this processor, it must be the first processor in your transformer. +func (o TransformerProcessorOutput) ParseCloudfront() TransformerParseCloudfrontPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerParseCloudfront { return v.ParseCloudfront }).(TransformerParseCloudfrontPtrOutput) +} + +// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. +func (o TransformerProcessorOutput) ParseJson() TransformerProcessorParseJsonPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorParseJsonProperties { return v.ParseJson }).(TransformerProcessorParseJsonPropertiesPtrOutput) +} + +// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. +func (o TransformerProcessorOutput) ParseKeyValue() TransformerProcessorParseKeyValuePropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorParseKeyValueProperties { return v.ParseKeyValue }).(TransformerProcessorParseKeyValuePropertiesPtrOutput) +} + +// Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. +// +// If you use this processor, it must be the first processor in your transformer. +func (o TransformerProcessorOutput) ParsePostgres() TransformerParsePostgresPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerParsePostgres { return v.ParsePostgres }).(TransformerParsePostgresPtrOutput) +} + +// Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. +// +// If you use this processor, it must be the first processor in your transformer. +func (o TransformerProcessorOutput) ParseRoute53() TransformerParseRoute53PtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerParseRoute53 { return v.ParseRoute53 }).(TransformerParseRoute53PtrOutput) +} + +// Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. +// +// If you use this processor, it must be the first processor in your transformer. +func (o TransformerProcessorOutput) ParseVpc() TransformerParseVpcPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerParseVpc { return v.ParseVpc }).(TransformerParseVpcPtrOutput) +} + +// Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. +// +// If you use this processor, it must be the first processor in your transformer. +func (o TransformerProcessorOutput) ParseWaf() TransformerParseWafPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerParseWaf { return v.ParseWaf }).(TransformerParseWafPtrOutput) +} + +// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. +func (o TransformerProcessorOutput) RenameKeys() TransformerProcessorRenameKeysPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorRenameKeysProperties { return v.RenameKeys }).(TransformerProcessorRenameKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. +func (o TransformerProcessorOutput) SplitString() TransformerProcessorSplitStringPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorSplitStringProperties { return v.SplitString }).(TransformerProcessorSplitStringPropertiesPtrOutput) +} + +// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. +func (o TransformerProcessorOutput) SubstituteString() TransformerProcessorSubstituteStringPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorSubstituteStringProperties { + return v.SubstituteString + }).(TransformerProcessorSubstituteStringPropertiesPtrOutput) +} + +// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. +func (o TransformerProcessorOutput) TrimString() TransformerProcessorTrimStringPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorTrimStringProperties { return v.TrimString }).(TransformerProcessorTrimStringPropertiesPtrOutput) +} + +// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. +func (o TransformerProcessorOutput) TypeConverter() TransformerProcessorTypeConverterPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorTypeConverterProperties { return v.TypeConverter }).(TransformerProcessorTypeConverterPropertiesPtrOutput) +} + +// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. +func (o TransformerProcessorOutput) UpperCaseString() TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return o.ApplyT(func(v TransformerProcessor) *TransformerProcessorUpperCaseStringProperties { return v.UpperCaseString }).(TransformerProcessorUpperCaseStringPropertiesPtrOutput) +} + +type TransformerProcessorArrayOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerProcessor)(nil)).Elem() +} + +func (o TransformerProcessorArrayOutput) ToTransformerProcessorArrayOutput() TransformerProcessorArrayOutput { + return o +} + +func (o TransformerProcessorArrayOutput) ToTransformerProcessorArrayOutputWithContext(ctx context.Context) TransformerProcessorArrayOutput { + return o +} + +func (o TransformerProcessorArrayOutput) Index(i pulumi.IntInput) TransformerProcessorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerProcessor { + return vs[0].([]TransformerProcessor)[vs[1].(int)] + }).(TransformerProcessorOutput) +} + +// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. +type TransformerProcessorAddKeysProperties struct { + Entries []TransformerAddKeyEntry `pulumi:"entries"` +} + +// TransformerProcessorAddKeysPropertiesInput is an input type that accepts TransformerProcessorAddKeysPropertiesArgs and TransformerProcessorAddKeysPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorAddKeysPropertiesInput` via: +// +// TransformerProcessorAddKeysPropertiesArgs{...} +type TransformerProcessorAddKeysPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorAddKeysPropertiesOutput() TransformerProcessorAddKeysPropertiesOutput + ToTransformerProcessorAddKeysPropertiesOutputWithContext(context.Context) TransformerProcessorAddKeysPropertiesOutput +} + +// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. +type TransformerProcessorAddKeysPropertiesArgs struct { + Entries TransformerAddKeyEntryArrayInput `pulumi:"entries"` +} + +func (TransformerProcessorAddKeysPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorAddKeysProperties)(nil)).Elem() +} + +func (i TransformerProcessorAddKeysPropertiesArgs) ToTransformerProcessorAddKeysPropertiesOutput() TransformerProcessorAddKeysPropertiesOutput { + return i.ToTransformerProcessorAddKeysPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorAddKeysPropertiesArgs) ToTransformerProcessorAddKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorAddKeysPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorAddKeysPropertiesOutput) +} + +func (i TransformerProcessorAddKeysPropertiesArgs) ToTransformerProcessorAddKeysPropertiesPtrOutput() TransformerProcessorAddKeysPropertiesPtrOutput { + return i.ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorAddKeysPropertiesArgs) ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorAddKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorAddKeysPropertiesOutput).ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorAddKeysPropertiesPtrInput is an input type that accepts TransformerProcessorAddKeysPropertiesArgs, TransformerProcessorAddKeysPropertiesPtr and TransformerProcessorAddKeysPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorAddKeysPropertiesPtrInput` via: +// +// TransformerProcessorAddKeysPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorAddKeysPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorAddKeysPropertiesPtrOutput() TransformerProcessorAddKeysPropertiesPtrOutput + ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(context.Context) TransformerProcessorAddKeysPropertiesPtrOutput +} + +type transformerProcessorAddKeysPropertiesPtrType TransformerProcessorAddKeysPropertiesArgs + +func TransformerProcessorAddKeysPropertiesPtr(v *TransformerProcessorAddKeysPropertiesArgs) TransformerProcessorAddKeysPropertiesPtrInput { + return (*transformerProcessorAddKeysPropertiesPtrType)(v) +} + +func (*transformerProcessorAddKeysPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorAddKeysProperties)(nil)).Elem() +} + +func (i *transformerProcessorAddKeysPropertiesPtrType) ToTransformerProcessorAddKeysPropertiesPtrOutput() TransformerProcessorAddKeysPropertiesPtrOutput { + return i.ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorAddKeysPropertiesPtrType) ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorAddKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorAddKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. +type TransformerProcessorAddKeysPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorAddKeysPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorAddKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorAddKeysPropertiesOutput) ToTransformerProcessorAddKeysPropertiesOutput() TransformerProcessorAddKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorAddKeysPropertiesOutput) ToTransformerProcessorAddKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorAddKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorAddKeysPropertiesOutput) ToTransformerProcessorAddKeysPropertiesPtrOutput() TransformerProcessorAddKeysPropertiesPtrOutput { + return o.ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorAddKeysPropertiesOutput) ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorAddKeysPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorAddKeysProperties) *TransformerProcessorAddKeysProperties { + return &v + }).(TransformerProcessorAddKeysPropertiesPtrOutput) +} + +func (o TransformerProcessorAddKeysPropertiesOutput) Entries() TransformerAddKeyEntryArrayOutput { + return o.ApplyT(func(v TransformerProcessorAddKeysProperties) []TransformerAddKeyEntry { return v.Entries }).(TransformerAddKeyEntryArrayOutput) +} + +type TransformerProcessorAddKeysPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorAddKeysPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorAddKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorAddKeysPropertiesPtrOutput) ToTransformerProcessorAddKeysPropertiesPtrOutput() TransformerProcessorAddKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorAddKeysPropertiesPtrOutput) ToTransformerProcessorAddKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorAddKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorAddKeysPropertiesPtrOutput) Elem() TransformerProcessorAddKeysPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorAddKeysProperties) TransformerProcessorAddKeysProperties { + if v != nil { + return *v + } + var ret TransformerProcessorAddKeysProperties + return ret + }).(TransformerProcessorAddKeysPropertiesOutput) +} + +func (o TransformerProcessorAddKeysPropertiesPtrOutput) Entries() TransformerAddKeyEntryArrayOutput { + return o.ApplyT(func(v *TransformerProcessorAddKeysProperties) []TransformerAddKeyEntry { + if v == nil { + return nil + } + return v.Entries + }).(TransformerAddKeyEntryArrayOutput) +} + +// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. +type TransformerProcessorCopyValueProperties struct { + Entries []TransformerCopyValueEntry `pulumi:"entries"` +} + +// TransformerProcessorCopyValuePropertiesInput is an input type that accepts TransformerProcessorCopyValuePropertiesArgs and TransformerProcessorCopyValuePropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorCopyValuePropertiesInput` via: +// +// TransformerProcessorCopyValuePropertiesArgs{...} +type TransformerProcessorCopyValuePropertiesInput interface { + pulumi.Input + + ToTransformerProcessorCopyValuePropertiesOutput() TransformerProcessorCopyValuePropertiesOutput + ToTransformerProcessorCopyValuePropertiesOutputWithContext(context.Context) TransformerProcessorCopyValuePropertiesOutput +} + +// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. +type TransformerProcessorCopyValuePropertiesArgs struct { + Entries TransformerCopyValueEntryArrayInput `pulumi:"entries"` +} + +func (TransformerProcessorCopyValuePropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorCopyValueProperties)(nil)).Elem() +} + +func (i TransformerProcessorCopyValuePropertiesArgs) ToTransformerProcessorCopyValuePropertiesOutput() TransformerProcessorCopyValuePropertiesOutput { + return i.ToTransformerProcessorCopyValuePropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorCopyValuePropertiesArgs) ToTransformerProcessorCopyValuePropertiesOutputWithContext(ctx context.Context) TransformerProcessorCopyValuePropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorCopyValuePropertiesOutput) +} + +func (i TransformerProcessorCopyValuePropertiesArgs) ToTransformerProcessorCopyValuePropertiesPtrOutput() TransformerProcessorCopyValuePropertiesPtrOutput { + return i.ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorCopyValuePropertiesArgs) ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCopyValuePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorCopyValuePropertiesOutput).ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorCopyValuePropertiesPtrInput is an input type that accepts TransformerProcessorCopyValuePropertiesArgs, TransformerProcessorCopyValuePropertiesPtr and TransformerProcessorCopyValuePropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorCopyValuePropertiesPtrInput` via: +// +// TransformerProcessorCopyValuePropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorCopyValuePropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorCopyValuePropertiesPtrOutput() TransformerProcessorCopyValuePropertiesPtrOutput + ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(context.Context) TransformerProcessorCopyValuePropertiesPtrOutput +} + +type transformerProcessorCopyValuePropertiesPtrType TransformerProcessorCopyValuePropertiesArgs + +func TransformerProcessorCopyValuePropertiesPtr(v *TransformerProcessorCopyValuePropertiesArgs) TransformerProcessorCopyValuePropertiesPtrInput { + return (*transformerProcessorCopyValuePropertiesPtrType)(v) +} + +func (*transformerProcessorCopyValuePropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorCopyValueProperties)(nil)).Elem() +} + +func (i *transformerProcessorCopyValuePropertiesPtrType) ToTransformerProcessorCopyValuePropertiesPtrOutput() TransformerProcessorCopyValuePropertiesPtrOutput { + return i.ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorCopyValuePropertiesPtrType) ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCopyValuePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorCopyValuePropertiesPtrOutput) +} + +// Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. +type TransformerProcessorCopyValuePropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorCopyValuePropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorCopyValueProperties)(nil)).Elem() +} + +func (o TransformerProcessorCopyValuePropertiesOutput) ToTransformerProcessorCopyValuePropertiesOutput() TransformerProcessorCopyValuePropertiesOutput { + return o +} + +func (o TransformerProcessorCopyValuePropertiesOutput) ToTransformerProcessorCopyValuePropertiesOutputWithContext(ctx context.Context) TransformerProcessorCopyValuePropertiesOutput { + return o +} + +func (o TransformerProcessorCopyValuePropertiesOutput) ToTransformerProcessorCopyValuePropertiesPtrOutput() TransformerProcessorCopyValuePropertiesPtrOutput { + return o.ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorCopyValuePropertiesOutput) ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCopyValuePropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorCopyValueProperties) *TransformerProcessorCopyValueProperties { + return &v + }).(TransformerProcessorCopyValuePropertiesPtrOutput) +} + +func (o TransformerProcessorCopyValuePropertiesOutput) Entries() TransformerCopyValueEntryArrayOutput { + return o.ApplyT(func(v TransformerProcessorCopyValueProperties) []TransformerCopyValueEntry { return v.Entries }).(TransformerCopyValueEntryArrayOutput) +} + +type TransformerProcessorCopyValuePropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorCopyValuePropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorCopyValueProperties)(nil)).Elem() +} + +func (o TransformerProcessorCopyValuePropertiesPtrOutput) ToTransformerProcessorCopyValuePropertiesPtrOutput() TransformerProcessorCopyValuePropertiesPtrOutput { + return o +} + +func (o TransformerProcessorCopyValuePropertiesPtrOutput) ToTransformerProcessorCopyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCopyValuePropertiesPtrOutput { + return o +} + +func (o TransformerProcessorCopyValuePropertiesPtrOutput) Elem() TransformerProcessorCopyValuePropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorCopyValueProperties) TransformerProcessorCopyValueProperties { + if v != nil { + return *v + } + var ret TransformerProcessorCopyValueProperties + return ret + }).(TransformerProcessorCopyValuePropertiesOutput) +} + +func (o TransformerProcessorCopyValuePropertiesPtrOutput) Entries() TransformerCopyValueEntryArrayOutput { + return o.ApplyT(func(v *TransformerProcessorCopyValueProperties) []TransformerCopyValueEntry { + if v == nil { + return nil + } + return v.Entries + }).(TransformerCopyValueEntryArrayOutput) +} + +// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. +type TransformerProcessorCsvProperties struct { + Columns []string `pulumi:"columns"` + Delimiter *string `pulumi:"delimiter"` + QuoteCharacter *string `pulumi:"quoteCharacter"` + Source *string `pulumi:"source"` +} + +// TransformerProcessorCsvPropertiesInput is an input type that accepts TransformerProcessorCsvPropertiesArgs and TransformerProcessorCsvPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorCsvPropertiesInput` via: +// +// TransformerProcessorCsvPropertiesArgs{...} +type TransformerProcessorCsvPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorCsvPropertiesOutput() TransformerProcessorCsvPropertiesOutput + ToTransformerProcessorCsvPropertiesOutputWithContext(context.Context) TransformerProcessorCsvPropertiesOutput +} + +// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. +type TransformerProcessorCsvPropertiesArgs struct { + Columns pulumi.StringArrayInput `pulumi:"columns"` + Delimiter pulumi.StringPtrInput `pulumi:"delimiter"` + QuoteCharacter pulumi.StringPtrInput `pulumi:"quoteCharacter"` + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerProcessorCsvPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorCsvProperties)(nil)).Elem() +} + +func (i TransformerProcessorCsvPropertiesArgs) ToTransformerProcessorCsvPropertiesOutput() TransformerProcessorCsvPropertiesOutput { + return i.ToTransformerProcessorCsvPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorCsvPropertiesArgs) ToTransformerProcessorCsvPropertiesOutputWithContext(ctx context.Context) TransformerProcessorCsvPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorCsvPropertiesOutput) +} + +func (i TransformerProcessorCsvPropertiesArgs) ToTransformerProcessorCsvPropertiesPtrOutput() TransformerProcessorCsvPropertiesPtrOutput { + return i.ToTransformerProcessorCsvPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorCsvPropertiesArgs) ToTransformerProcessorCsvPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCsvPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorCsvPropertiesOutput).ToTransformerProcessorCsvPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorCsvPropertiesPtrInput is an input type that accepts TransformerProcessorCsvPropertiesArgs, TransformerProcessorCsvPropertiesPtr and TransformerProcessorCsvPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorCsvPropertiesPtrInput` via: +// +// TransformerProcessorCsvPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorCsvPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorCsvPropertiesPtrOutput() TransformerProcessorCsvPropertiesPtrOutput + ToTransformerProcessorCsvPropertiesPtrOutputWithContext(context.Context) TransformerProcessorCsvPropertiesPtrOutput +} + +type transformerProcessorCsvPropertiesPtrType TransformerProcessorCsvPropertiesArgs + +func TransformerProcessorCsvPropertiesPtr(v *TransformerProcessorCsvPropertiesArgs) TransformerProcessorCsvPropertiesPtrInput { + return (*transformerProcessorCsvPropertiesPtrType)(v) +} + +func (*transformerProcessorCsvPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorCsvProperties)(nil)).Elem() +} + +func (i *transformerProcessorCsvPropertiesPtrType) ToTransformerProcessorCsvPropertiesPtrOutput() TransformerProcessorCsvPropertiesPtrOutput { + return i.ToTransformerProcessorCsvPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorCsvPropertiesPtrType) ToTransformerProcessorCsvPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCsvPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorCsvPropertiesPtrOutput) +} + +// Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. +type TransformerProcessorCsvPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorCsvPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorCsvProperties)(nil)).Elem() +} + +func (o TransformerProcessorCsvPropertiesOutput) ToTransformerProcessorCsvPropertiesOutput() TransformerProcessorCsvPropertiesOutput { + return o +} + +func (o TransformerProcessorCsvPropertiesOutput) ToTransformerProcessorCsvPropertiesOutputWithContext(ctx context.Context) TransformerProcessorCsvPropertiesOutput { + return o +} + +func (o TransformerProcessorCsvPropertiesOutput) ToTransformerProcessorCsvPropertiesPtrOutput() TransformerProcessorCsvPropertiesPtrOutput { + return o.ToTransformerProcessorCsvPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorCsvPropertiesOutput) ToTransformerProcessorCsvPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCsvPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorCsvProperties) *TransformerProcessorCsvProperties { + return &v + }).(TransformerProcessorCsvPropertiesPtrOutput) +} + +func (o TransformerProcessorCsvPropertiesOutput) Columns() pulumi.StringArrayOutput { + return o.ApplyT(func(v TransformerProcessorCsvProperties) []string { return v.Columns }).(pulumi.StringArrayOutput) +} + +func (o TransformerProcessorCsvPropertiesOutput) Delimiter() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorCsvProperties) *string { return v.Delimiter }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorCsvPropertiesOutput) QuoteCharacter() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorCsvProperties) *string { return v.QuoteCharacter }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorCsvPropertiesOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorCsvProperties) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerProcessorCsvPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorCsvPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorCsvProperties)(nil)).Elem() +} + +func (o TransformerProcessorCsvPropertiesPtrOutput) ToTransformerProcessorCsvPropertiesPtrOutput() TransformerProcessorCsvPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorCsvPropertiesPtrOutput) ToTransformerProcessorCsvPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorCsvPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorCsvPropertiesPtrOutput) Elem() TransformerProcessorCsvPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorCsvProperties) TransformerProcessorCsvProperties { + if v != nil { + return *v + } + var ret TransformerProcessorCsvProperties + return ret + }).(TransformerProcessorCsvPropertiesOutput) +} + +func (o TransformerProcessorCsvPropertiesPtrOutput) Columns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *TransformerProcessorCsvProperties) []string { + if v == nil { + return nil + } + return v.Columns + }).(pulumi.StringArrayOutput) +} + +func (o TransformerProcessorCsvPropertiesPtrOutput) Delimiter() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorCsvProperties) *string { + if v == nil { + return nil + } + return v.Delimiter + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorCsvPropertiesPtrOutput) QuoteCharacter() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorCsvProperties) *string { + if v == nil { + return nil + } + return v.QuoteCharacter + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorCsvPropertiesPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorCsvProperties) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. +type TransformerProcessorDateTimeConverterProperties struct { + Locale *string `pulumi:"locale"` + MatchPatterns []string `pulumi:"matchPatterns"` + Source string `pulumi:"source"` + SourceTimezone *string `pulumi:"sourceTimezone"` + Target string `pulumi:"target"` + TargetFormat *string `pulumi:"targetFormat"` + TargetTimezone *string `pulumi:"targetTimezone"` +} + +// TransformerProcessorDateTimeConverterPropertiesInput is an input type that accepts TransformerProcessorDateTimeConverterPropertiesArgs and TransformerProcessorDateTimeConverterPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorDateTimeConverterPropertiesInput` via: +// +// TransformerProcessorDateTimeConverterPropertiesArgs{...} +type TransformerProcessorDateTimeConverterPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorDateTimeConverterPropertiesOutput() TransformerProcessorDateTimeConverterPropertiesOutput + ToTransformerProcessorDateTimeConverterPropertiesOutputWithContext(context.Context) TransformerProcessorDateTimeConverterPropertiesOutput +} + +// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. +type TransformerProcessorDateTimeConverterPropertiesArgs struct { + Locale pulumi.StringPtrInput `pulumi:"locale"` + MatchPatterns pulumi.StringArrayInput `pulumi:"matchPatterns"` + Source pulumi.StringInput `pulumi:"source"` + SourceTimezone pulumi.StringPtrInput `pulumi:"sourceTimezone"` + Target pulumi.StringInput `pulumi:"target"` + TargetFormat pulumi.StringPtrInput `pulumi:"targetFormat"` + TargetTimezone pulumi.StringPtrInput `pulumi:"targetTimezone"` +} + +func (TransformerProcessorDateTimeConverterPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorDateTimeConverterProperties)(nil)).Elem() +} + +func (i TransformerProcessorDateTimeConverterPropertiesArgs) ToTransformerProcessorDateTimeConverterPropertiesOutput() TransformerProcessorDateTimeConverterPropertiesOutput { + return i.ToTransformerProcessorDateTimeConverterPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorDateTimeConverterPropertiesArgs) ToTransformerProcessorDateTimeConverterPropertiesOutputWithContext(ctx context.Context) TransformerProcessorDateTimeConverterPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorDateTimeConverterPropertiesOutput) +} + +func (i TransformerProcessorDateTimeConverterPropertiesArgs) ToTransformerProcessorDateTimeConverterPropertiesPtrOutput() TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return i.ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorDateTimeConverterPropertiesArgs) ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorDateTimeConverterPropertiesOutput).ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorDateTimeConverterPropertiesPtrInput is an input type that accepts TransformerProcessorDateTimeConverterPropertiesArgs, TransformerProcessorDateTimeConverterPropertiesPtr and TransformerProcessorDateTimeConverterPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorDateTimeConverterPropertiesPtrInput` via: +// +// TransformerProcessorDateTimeConverterPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorDateTimeConverterPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorDateTimeConverterPropertiesPtrOutput() TransformerProcessorDateTimeConverterPropertiesPtrOutput + ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(context.Context) TransformerProcessorDateTimeConverterPropertiesPtrOutput +} + +type transformerProcessorDateTimeConverterPropertiesPtrType TransformerProcessorDateTimeConverterPropertiesArgs + +func TransformerProcessorDateTimeConverterPropertiesPtr(v *TransformerProcessorDateTimeConverterPropertiesArgs) TransformerProcessorDateTimeConverterPropertiesPtrInput { + return (*transformerProcessorDateTimeConverterPropertiesPtrType)(v) +} + +func (*transformerProcessorDateTimeConverterPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorDateTimeConverterProperties)(nil)).Elem() +} + +func (i *transformerProcessorDateTimeConverterPropertiesPtrType) ToTransformerProcessorDateTimeConverterPropertiesPtrOutput() TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return i.ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorDateTimeConverterPropertiesPtrType) ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorDateTimeConverterPropertiesPtrOutput) +} + +// Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. +type TransformerProcessorDateTimeConverterPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorDateTimeConverterPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorDateTimeConverterProperties)(nil)).Elem() +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) ToTransformerProcessorDateTimeConverterPropertiesOutput() TransformerProcessorDateTimeConverterPropertiesOutput { + return o +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) ToTransformerProcessorDateTimeConverterPropertiesOutputWithContext(ctx context.Context) TransformerProcessorDateTimeConverterPropertiesOutput { + return o +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) ToTransformerProcessorDateTimeConverterPropertiesPtrOutput() TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return o.ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorDateTimeConverterProperties) *TransformerProcessorDateTimeConverterProperties { + return &v + }).(TransformerProcessorDateTimeConverterPropertiesPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) Locale() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorDateTimeConverterProperties) *string { return v.Locale }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) MatchPatterns() pulumi.StringArrayOutput { + return o.ApplyT(func(v TransformerProcessorDateTimeConverterProperties) []string { return v.MatchPatterns }).(pulumi.StringArrayOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) Source() pulumi.StringOutput { + return o.ApplyT(func(v TransformerProcessorDateTimeConverterProperties) string { return v.Source }).(pulumi.StringOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) SourceTimezone() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorDateTimeConverterProperties) *string { return v.SourceTimezone }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) Target() pulumi.StringOutput { + return o.ApplyT(func(v TransformerProcessorDateTimeConverterProperties) string { return v.Target }).(pulumi.StringOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) TargetFormat() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorDateTimeConverterProperties) *string { return v.TargetFormat }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesOutput) TargetTimezone() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorDateTimeConverterProperties) *string { return v.TargetTimezone }).(pulumi.StringPtrOutput) +} + +type TransformerProcessorDateTimeConverterPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorDateTimeConverterPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorDateTimeConverterProperties)(nil)).Elem() +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) ToTransformerProcessorDateTimeConverterPropertiesPtrOutput() TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) ToTransformerProcessorDateTimeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDateTimeConverterPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) Elem() TransformerProcessorDateTimeConverterPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) TransformerProcessorDateTimeConverterProperties { + if v != nil { + return *v + } + var ret TransformerProcessorDateTimeConverterProperties + return ret + }).(TransformerProcessorDateTimeConverterPropertiesOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) Locale() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) *string { + if v == nil { + return nil + } + return v.Locale + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) MatchPatterns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) []string { + if v == nil { + return nil + } + return v.MatchPatterns + }).(pulumi.StringArrayOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) *string { + if v == nil { + return nil + } + return &v.Source + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) SourceTimezone() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) *string { + if v == nil { + return nil + } + return v.SourceTimezone + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) Target() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) *string { + if v == nil { + return nil + } + return &v.Target + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) TargetFormat() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) *string { + if v == nil { + return nil + } + return v.TargetFormat + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorDateTimeConverterPropertiesPtrOutput) TargetTimezone() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorDateTimeConverterProperties) *string { + if v == nil { + return nil + } + return v.TargetTimezone + }).(pulumi.StringPtrOutput) +} + +// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. +type TransformerProcessorDeleteKeysProperties struct { + WithKeys []string `pulumi:"withKeys"` +} + +// TransformerProcessorDeleteKeysPropertiesInput is an input type that accepts TransformerProcessorDeleteKeysPropertiesArgs and TransformerProcessorDeleteKeysPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorDeleteKeysPropertiesInput` via: +// +// TransformerProcessorDeleteKeysPropertiesArgs{...} +type TransformerProcessorDeleteKeysPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorDeleteKeysPropertiesOutput() TransformerProcessorDeleteKeysPropertiesOutput + ToTransformerProcessorDeleteKeysPropertiesOutputWithContext(context.Context) TransformerProcessorDeleteKeysPropertiesOutput +} + +// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. +type TransformerProcessorDeleteKeysPropertiesArgs struct { + WithKeys pulumi.StringArrayInput `pulumi:"withKeys"` +} + +func (TransformerProcessorDeleteKeysPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorDeleteKeysProperties)(nil)).Elem() +} + +func (i TransformerProcessorDeleteKeysPropertiesArgs) ToTransformerProcessorDeleteKeysPropertiesOutput() TransformerProcessorDeleteKeysPropertiesOutput { + return i.ToTransformerProcessorDeleteKeysPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorDeleteKeysPropertiesArgs) ToTransformerProcessorDeleteKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorDeleteKeysPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorDeleteKeysPropertiesOutput) +} + +func (i TransformerProcessorDeleteKeysPropertiesArgs) ToTransformerProcessorDeleteKeysPropertiesPtrOutput() TransformerProcessorDeleteKeysPropertiesPtrOutput { + return i.ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorDeleteKeysPropertiesArgs) ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDeleteKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorDeleteKeysPropertiesOutput).ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorDeleteKeysPropertiesPtrInput is an input type that accepts TransformerProcessorDeleteKeysPropertiesArgs, TransformerProcessorDeleteKeysPropertiesPtr and TransformerProcessorDeleteKeysPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorDeleteKeysPropertiesPtrInput` via: +// +// TransformerProcessorDeleteKeysPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorDeleteKeysPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorDeleteKeysPropertiesPtrOutput() TransformerProcessorDeleteKeysPropertiesPtrOutput + ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(context.Context) TransformerProcessorDeleteKeysPropertiesPtrOutput +} + +type transformerProcessorDeleteKeysPropertiesPtrType TransformerProcessorDeleteKeysPropertiesArgs + +func TransformerProcessorDeleteKeysPropertiesPtr(v *TransformerProcessorDeleteKeysPropertiesArgs) TransformerProcessorDeleteKeysPropertiesPtrInput { + return (*transformerProcessorDeleteKeysPropertiesPtrType)(v) +} + +func (*transformerProcessorDeleteKeysPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorDeleteKeysProperties)(nil)).Elem() +} + +func (i *transformerProcessorDeleteKeysPropertiesPtrType) ToTransformerProcessorDeleteKeysPropertiesPtrOutput() TransformerProcessorDeleteKeysPropertiesPtrOutput { + return i.ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorDeleteKeysPropertiesPtrType) ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDeleteKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorDeleteKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. +type TransformerProcessorDeleteKeysPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorDeleteKeysPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorDeleteKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorDeleteKeysPropertiesOutput) ToTransformerProcessorDeleteKeysPropertiesOutput() TransformerProcessorDeleteKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorDeleteKeysPropertiesOutput) ToTransformerProcessorDeleteKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorDeleteKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorDeleteKeysPropertiesOutput) ToTransformerProcessorDeleteKeysPropertiesPtrOutput() TransformerProcessorDeleteKeysPropertiesPtrOutput { + return o.ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorDeleteKeysPropertiesOutput) ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDeleteKeysPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorDeleteKeysProperties) *TransformerProcessorDeleteKeysProperties { + return &v + }).(TransformerProcessorDeleteKeysPropertiesPtrOutput) +} + +func (o TransformerProcessorDeleteKeysPropertiesOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v TransformerProcessorDeleteKeysProperties) []string { return v.WithKeys }).(pulumi.StringArrayOutput) +} + +type TransformerProcessorDeleteKeysPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorDeleteKeysPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorDeleteKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorDeleteKeysPropertiesPtrOutput) ToTransformerProcessorDeleteKeysPropertiesPtrOutput() TransformerProcessorDeleteKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorDeleteKeysPropertiesPtrOutput) ToTransformerProcessorDeleteKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorDeleteKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorDeleteKeysPropertiesPtrOutput) Elem() TransformerProcessorDeleteKeysPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorDeleteKeysProperties) TransformerProcessorDeleteKeysProperties { + if v != nil { + return *v + } + var ret TransformerProcessorDeleteKeysProperties + return ret + }).(TransformerProcessorDeleteKeysPropertiesOutput) +} + +func (o TransformerProcessorDeleteKeysPropertiesPtrOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v *TransformerProcessorDeleteKeysProperties) []string { + if v == nil { + return nil + } + return v.WithKeys + }).(pulumi.StringArrayOutput) +} + +// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. +type TransformerProcessorGrokProperties struct { + Match string `pulumi:"match"` + Source *string `pulumi:"source"` +} + +// TransformerProcessorGrokPropertiesInput is an input type that accepts TransformerProcessorGrokPropertiesArgs and TransformerProcessorGrokPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorGrokPropertiesInput` via: +// +// TransformerProcessorGrokPropertiesArgs{...} +type TransformerProcessorGrokPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorGrokPropertiesOutput() TransformerProcessorGrokPropertiesOutput + ToTransformerProcessorGrokPropertiesOutputWithContext(context.Context) TransformerProcessorGrokPropertiesOutput +} + +// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. +type TransformerProcessorGrokPropertiesArgs struct { + Match pulumi.StringInput `pulumi:"match"` + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerProcessorGrokPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorGrokProperties)(nil)).Elem() +} + +func (i TransformerProcessorGrokPropertiesArgs) ToTransformerProcessorGrokPropertiesOutput() TransformerProcessorGrokPropertiesOutput { + return i.ToTransformerProcessorGrokPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorGrokPropertiesArgs) ToTransformerProcessorGrokPropertiesOutputWithContext(ctx context.Context) TransformerProcessorGrokPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorGrokPropertiesOutput) +} + +func (i TransformerProcessorGrokPropertiesArgs) ToTransformerProcessorGrokPropertiesPtrOutput() TransformerProcessorGrokPropertiesPtrOutput { + return i.ToTransformerProcessorGrokPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorGrokPropertiesArgs) ToTransformerProcessorGrokPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorGrokPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorGrokPropertiesOutput).ToTransformerProcessorGrokPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorGrokPropertiesPtrInput is an input type that accepts TransformerProcessorGrokPropertiesArgs, TransformerProcessorGrokPropertiesPtr and TransformerProcessorGrokPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorGrokPropertiesPtrInput` via: +// +// TransformerProcessorGrokPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorGrokPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorGrokPropertiesPtrOutput() TransformerProcessorGrokPropertiesPtrOutput + ToTransformerProcessorGrokPropertiesPtrOutputWithContext(context.Context) TransformerProcessorGrokPropertiesPtrOutput +} + +type transformerProcessorGrokPropertiesPtrType TransformerProcessorGrokPropertiesArgs + +func TransformerProcessorGrokPropertiesPtr(v *TransformerProcessorGrokPropertiesArgs) TransformerProcessorGrokPropertiesPtrInput { + return (*transformerProcessorGrokPropertiesPtrType)(v) +} + +func (*transformerProcessorGrokPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorGrokProperties)(nil)).Elem() +} + +func (i *transformerProcessorGrokPropertiesPtrType) ToTransformerProcessorGrokPropertiesPtrOutput() TransformerProcessorGrokPropertiesPtrOutput { + return i.ToTransformerProcessorGrokPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorGrokPropertiesPtrType) ToTransformerProcessorGrokPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorGrokPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorGrokPropertiesPtrOutput) +} + +// Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. +type TransformerProcessorGrokPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorGrokPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorGrokProperties)(nil)).Elem() +} + +func (o TransformerProcessorGrokPropertiesOutput) ToTransformerProcessorGrokPropertiesOutput() TransformerProcessorGrokPropertiesOutput { + return o +} + +func (o TransformerProcessorGrokPropertiesOutput) ToTransformerProcessorGrokPropertiesOutputWithContext(ctx context.Context) TransformerProcessorGrokPropertiesOutput { + return o +} + +func (o TransformerProcessorGrokPropertiesOutput) ToTransformerProcessorGrokPropertiesPtrOutput() TransformerProcessorGrokPropertiesPtrOutput { + return o.ToTransformerProcessorGrokPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorGrokPropertiesOutput) ToTransformerProcessorGrokPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorGrokPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorGrokProperties) *TransformerProcessorGrokProperties { + return &v + }).(TransformerProcessorGrokPropertiesPtrOutput) +} + +func (o TransformerProcessorGrokPropertiesOutput) Match() pulumi.StringOutput { + return o.ApplyT(func(v TransformerProcessorGrokProperties) string { return v.Match }).(pulumi.StringOutput) +} + +func (o TransformerProcessorGrokPropertiesOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorGrokProperties) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerProcessorGrokPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorGrokPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorGrokProperties)(nil)).Elem() +} + +func (o TransformerProcessorGrokPropertiesPtrOutput) ToTransformerProcessorGrokPropertiesPtrOutput() TransformerProcessorGrokPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorGrokPropertiesPtrOutput) ToTransformerProcessorGrokPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorGrokPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorGrokPropertiesPtrOutput) Elem() TransformerProcessorGrokPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorGrokProperties) TransformerProcessorGrokProperties { + if v != nil { + return *v + } + var ret TransformerProcessorGrokProperties + return ret + }).(TransformerProcessorGrokPropertiesOutput) +} + +func (o TransformerProcessorGrokPropertiesPtrOutput) Match() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorGrokProperties) *string { + if v == nil { + return nil + } + return &v.Match + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorGrokPropertiesPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorGrokProperties) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. +type TransformerProcessorListToMapProperties struct { + Flatten *bool `pulumi:"flatten"` + FlattenedElement *TransformerProcessorListToMapPropertiesFlattenedElement `pulumi:"flattenedElement"` + Key string `pulumi:"key"` + Source string `pulumi:"source"` + Target *string `pulumi:"target"` + ValueKey *string `pulumi:"valueKey"` +} + +// TransformerProcessorListToMapPropertiesInput is an input type that accepts TransformerProcessorListToMapPropertiesArgs and TransformerProcessorListToMapPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorListToMapPropertiesInput` via: +// +// TransformerProcessorListToMapPropertiesArgs{...} +type TransformerProcessorListToMapPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorListToMapPropertiesOutput() TransformerProcessorListToMapPropertiesOutput + ToTransformerProcessorListToMapPropertiesOutputWithContext(context.Context) TransformerProcessorListToMapPropertiesOutput +} + +// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. +type TransformerProcessorListToMapPropertiesArgs struct { + Flatten pulumi.BoolPtrInput `pulumi:"flatten"` + FlattenedElement TransformerProcessorListToMapPropertiesFlattenedElementPtrInput `pulumi:"flattenedElement"` + Key pulumi.StringInput `pulumi:"key"` + Source pulumi.StringInput `pulumi:"source"` + Target pulumi.StringPtrInput `pulumi:"target"` + ValueKey pulumi.StringPtrInput `pulumi:"valueKey"` +} + +func (TransformerProcessorListToMapPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorListToMapProperties)(nil)).Elem() +} + +func (i TransformerProcessorListToMapPropertiesArgs) ToTransformerProcessorListToMapPropertiesOutput() TransformerProcessorListToMapPropertiesOutput { + return i.ToTransformerProcessorListToMapPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorListToMapPropertiesArgs) ToTransformerProcessorListToMapPropertiesOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorListToMapPropertiesOutput) +} + +func (i TransformerProcessorListToMapPropertiesArgs) ToTransformerProcessorListToMapPropertiesPtrOutput() TransformerProcessorListToMapPropertiesPtrOutput { + return i.ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorListToMapPropertiesArgs) ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorListToMapPropertiesOutput).ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorListToMapPropertiesPtrInput is an input type that accepts TransformerProcessorListToMapPropertiesArgs, TransformerProcessorListToMapPropertiesPtr and TransformerProcessorListToMapPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorListToMapPropertiesPtrInput` via: +// +// TransformerProcessorListToMapPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorListToMapPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorListToMapPropertiesPtrOutput() TransformerProcessorListToMapPropertiesPtrOutput + ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(context.Context) TransformerProcessorListToMapPropertiesPtrOutput +} + +type transformerProcessorListToMapPropertiesPtrType TransformerProcessorListToMapPropertiesArgs + +func TransformerProcessorListToMapPropertiesPtr(v *TransformerProcessorListToMapPropertiesArgs) TransformerProcessorListToMapPropertiesPtrInput { + return (*transformerProcessorListToMapPropertiesPtrType)(v) +} + +func (*transformerProcessorListToMapPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorListToMapProperties)(nil)).Elem() +} + +func (i *transformerProcessorListToMapPropertiesPtrType) ToTransformerProcessorListToMapPropertiesPtrOutput() TransformerProcessorListToMapPropertiesPtrOutput { + return i.ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorListToMapPropertiesPtrType) ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorListToMapPropertiesPtrOutput) +} + +// Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. +type TransformerProcessorListToMapPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorListToMapPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorListToMapProperties)(nil)).Elem() +} + +func (o TransformerProcessorListToMapPropertiesOutput) ToTransformerProcessorListToMapPropertiesOutput() TransformerProcessorListToMapPropertiesOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesOutput) ToTransformerProcessorListToMapPropertiesOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesOutput) ToTransformerProcessorListToMapPropertiesPtrOutput() TransformerProcessorListToMapPropertiesPtrOutput { + return o.ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorListToMapPropertiesOutput) ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorListToMapProperties) *TransformerProcessorListToMapProperties { + return &v + }).(TransformerProcessorListToMapPropertiesPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesOutput) Flatten() pulumi.BoolPtrOutput { + return o.ApplyT(func(v TransformerProcessorListToMapProperties) *bool { return v.Flatten }).(pulumi.BoolPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesOutput) FlattenedElement() TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return o.ApplyT(func(v TransformerProcessorListToMapProperties) *TransformerProcessorListToMapPropertiesFlattenedElement { + return v.FlattenedElement + }).(TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v TransformerProcessorListToMapProperties) string { return v.Key }).(pulumi.StringOutput) +} + +func (o TransformerProcessorListToMapPropertiesOutput) Source() pulumi.StringOutput { + return o.ApplyT(func(v TransformerProcessorListToMapProperties) string { return v.Source }).(pulumi.StringOutput) +} + +func (o TransformerProcessorListToMapPropertiesOutput) Target() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorListToMapProperties) *string { return v.Target }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesOutput) ValueKey() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorListToMapProperties) *string { return v.ValueKey }).(pulumi.StringPtrOutput) +} + +type TransformerProcessorListToMapPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorListToMapPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorListToMapProperties)(nil)).Elem() +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) ToTransformerProcessorListToMapPropertiesPtrOutput() TransformerProcessorListToMapPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) ToTransformerProcessorListToMapPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorListToMapPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) Elem() TransformerProcessorListToMapPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapProperties) TransformerProcessorListToMapProperties { + if v != nil { + return *v + } + var ret TransformerProcessorListToMapProperties + return ret + }).(TransformerProcessorListToMapPropertiesOutput) +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) Flatten() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapProperties) *bool { + if v == nil { + return nil + } + return v.Flatten + }).(pulumi.BoolPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) FlattenedElement() TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapProperties) *TransformerProcessorListToMapPropertiesFlattenedElement { + if v == nil { + return nil + } + return v.FlattenedElement + }).(TransformerProcessorListToMapPropertiesFlattenedElementPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) Key() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapProperties) *string { + if v == nil { + return nil + } + return &v.Key + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapProperties) *string { + if v == nil { + return nil + } + return &v.Source + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) Target() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapProperties) *string { + if v == nil { + return nil + } + return v.Target + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorListToMapPropertiesPtrOutput) ValueKey() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorListToMapProperties) *string { + if v == nil { + return nil + } + return v.ValueKey + }).(pulumi.StringPtrOutput) +} + +// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. +type TransformerProcessorLowerCaseStringProperties struct { + WithKeys []string `pulumi:"withKeys"` +} + +// TransformerProcessorLowerCaseStringPropertiesInput is an input type that accepts TransformerProcessorLowerCaseStringPropertiesArgs and TransformerProcessorLowerCaseStringPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorLowerCaseStringPropertiesInput` via: +// +// TransformerProcessorLowerCaseStringPropertiesArgs{...} +type TransformerProcessorLowerCaseStringPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorLowerCaseStringPropertiesOutput() TransformerProcessorLowerCaseStringPropertiesOutput + ToTransformerProcessorLowerCaseStringPropertiesOutputWithContext(context.Context) TransformerProcessorLowerCaseStringPropertiesOutput +} + +// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. +type TransformerProcessorLowerCaseStringPropertiesArgs struct { + WithKeys pulumi.StringArrayInput `pulumi:"withKeys"` +} + +func (TransformerProcessorLowerCaseStringPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorLowerCaseStringProperties)(nil)).Elem() +} + +func (i TransformerProcessorLowerCaseStringPropertiesArgs) ToTransformerProcessorLowerCaseStringPropertiesOutput() TransformerProcessorLowerCaseStringPropertiesOutput { + return i.ToTransformerProcessorLowerCaseStringPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorLowerCaseStringPropertiesArgs) ToTransformerProcessorLowerCaseStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorLowerCaseStringPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorLowerCaseStringPropertiesOutput) +} + +func (i TransformerProcessorLowerCaseStringPropertiesArgs) ToTransformerProcessorLowerCaseStringPropertiesPtrOutput() TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return i.ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorLowerCaseStringPropertiesArgs) ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorLowerCaseStringPropertiesOutput).ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorLowerCaseStringPropertiesPtrInput is an input type that accepts TransformerProcessorLowerCaseStringPropertiesArgs, TransformerProcessorLowerCaseStringPropertiesPtr and TransformerProcessorLowerCaseStringPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorLowerCaseStringPropertiesPtrInput` via: +// +// TransformerProcessorLowerCaseStringPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorLowerCaseStringPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorLowerCaseStringPropertiesPtrOutput() TransformerProcessorLowerCaseStringPropertiesPtrOutput + ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(context.Context) TransformerProcessorLowerCaseStringPropertiesPtrOutput +} + +type transformerProcessorLowerCaseStringPropertiesPtrType TransformerProcessorLowerCaseStringPropertiesArgs + +func TransformerProcessorLowerCaseStringPropertiesPtr(v *TransformerProcessorLowerCaseStringPropertiesArgs) TransformerProcessorLowerCaseStringPropertiesPtrInput { + return (*transformerProcessorLowerCaseStringPropertiesPtrType)(v) +} + +func (*transformerProcessorLowerCaseStringPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorLowerCaseStringProperties)(nil)).Elem() +} + +func (i *transformerProcessorLowerCaseStringPropertiesPtrType) ToTransformerProcessorLowerCaseStringPropertiesPtrOutput() TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return i.ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorLowerCaseStringPropertiesPtrType) ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorLowerCaseStringPropertiesPtrOutput) +} + +// Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. +type TransformerProcessorLowerCaseStringPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorLowerCaseStringPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorLowerCaseStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorLowerCaseStringPropertiesOutput) ToTransformerProcessorLowerCaseStringPropertiesOutput() TransformerProcessorLowerCaseStringPropertiesOutput { + return o +} + +func (o TransformerProcessorLowerCaseStringPropertiesOutput) ToTransformerProcessorLowerCaseStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorLowerCaseStringPropertiesOutput { + return o +} + +func (o TransformerProcessorLowerCaseStringPropertiesOutput) ToTransformerProcessorLowerCaseStringPropertiesPtrOutput() TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return o.ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorLowerCaseStringPropertiesOutput) ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorLowerCaseStringProperties) *TransformerProcessorLowerCaseStringProperties { + return &v + }).(TransformerProcessorLowerCaseStringPropertiesPtrOutput) +} + +func (o TransformerProcessorLowerCaseStringPropertiesOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v TransformerProcessorLowerCaseStringProperties) []string { return v.WithKeys }).(pulumi.StringArrayOutput) +} + +type TransformerProcessorLowerCaseStringPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorLowerCaseStringPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorLowerCaseStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorLowerCaseStringPropertiesPtrOutput) ToTransformerProcessorLowerCaseStringPropertiesPtrOutput() TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorLowerCaseStringPropertiesPtrOutput) ToTransformerProcessorLowerCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorLowerCaseStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorLowerCaseStringPropertiesPtrOutput) Elem() TransformerProcessorLowerCaseStringPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorLowerCaseStringProperties) TransformerProcessorLowerCaseStringProperties { + if v != nil { + return *v + } + var ret TransformerProcessorLowerCaseStringProperties + return ret + }).(TransformerProcessorLowerCaseStringPropertiesOutput) +} + +func (o TransformerProcessorLowerCaseStringPropertiesPtrOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v *TransformerProcessorLowerCaseStringProperties) []string { + if v == nil { + return nil + } + return v.WithKeys + }).(pulumi.StringArrayOutput) +} + +// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. +type TransformerProcessorMoveKeysProperties struct { + Entries []TransformerMoveKeyEntry `pulumi:"entries"` +} + +// TransformerProcessorMoveKeysPropertiesInput is an input type that accepts TransformerProcessorMoveKeysPropertiesArgs and TransformerProcessorMoveKeysPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorMoveKeysPropertiesInput` via: +// +// TransformerProcessorMoveKeysPropertiesArgs{...} +type TransformerProcessorMoveKeysPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorMoveKeysPropertiesOutput() TransformerProcessorMoveKeysPropertiesOutput + ToTransformerProcessorMoveKeysPropertiesOutputWithContext(context.Context) TransformerProcessorMoveKeysPropertiesOutput +} + +// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. +type TransformerProcessorMoveKeysPropertiesArgs struct { + Entries TransformerMoveKeyEntryArrayInput `pulumi:"entries"` +} + +func (TransformerProcessorMoveKeysPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorMoveKeysProperties)(nil)).Elem() +} + +func (i TransformerProcessorMoveKeysPropertiesArgs) ToTransformerProcessorMoveKeysPropertiesOutput() TransformerProcessorMoveKeysPropertiesOutput { + return i.ToTransformerProcessorMoveKeysPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorMoveKeysPropertiesArgs) ToTransformerProcessorMoveKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorMoveKeysPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorMoveKeysPropertiesOutput) +} + +func (i TransformerProcessorMoveKeysPropertiesArgs) ToTransformerProcessorMoveKeysPropertiesPtrOutput() TransformerProcessorMoveKeysPropertiesPtrOutput { + return i.ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorMoveKeysPropertiesArgs) ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorMoveKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorMoveKeysPropertiesOutput).ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorMoveKeysPropertiesPtrInput is an input type that accepts TransformerProcessorMoveKeysPropertiesArgs, TransformerProcessorMoveKeysPropertiesPtr and TransformerProcessorMoveKeysPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorMoveKeysPropertiesPtrInput` via: +// +// TransformerProcessorMoveKeysPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorMoveKeysPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorMoveKeysPropertiesPtrOutput() TransformerProcessorMoveKeysPropertiesPtrOutput + ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(context.Context) TransformerProcessorMoveKeysPropertiesPtrOutput +} + +type transformerProcessorMoveKeysPropertiesPtrType TransformerProcessorMoveKeysPropertiesArgs + +func TransformerProcessorMoveKeysPropertiesPtr(v *TransformerProcessorMoveKeysPropertiesArgs) TransformerProcessorMoveKeysPropertiesPtrInput { + return (*transformerProcessorMoveKeysPropertiesPtrType)(v) +} + +func (*transformerProcessorMoveKeysPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorMoveKeysProperties)(nil)).Elem() +} + +func (i *transformerProcessorMoveKeysPropertiesPtrType) ToTransformerProcessorMoveKeysPropertiesPtrOutput() TransformerProcessorMoveKeysPropertiesPtrOutput { + return i.ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorMoveKeysPropertiesPtrType) ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorMoveKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorMoveKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. +type TransformerProcessorMoveKeysPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorMoveKeysPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorMoveKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorMoveKeysPropertiesOutput) ToTransformerProcessorMoveKeysPropertiesOutput() TransformerProcessorMoveKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorMoveKeysPropertiesOutput) ToTransformerProcessorMoveKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorMoveKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorMoveKeysPropertiesOutput) ToTransformerProcessorMoveKeysPropertiesPtrOutput() TransformerProcessorMoveKeysPropertiesPtrOutput { + return o.ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorMoveKeysPropertiesOutput) ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorMoveKeysPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorMoveKeysProperties) *TransformerProcessorMoveKeysProperties { + return &v + }).(TransformerProcessorMoveKeysPropertiesPtrOutput) +} + +func (o TransformerProcessorMoveKeysPropertiesOutput) Entries() TransformerMoveKeyEntryArrayOutput { + return o.ApplyT(func(v TransformerProcessorMoveKeysProperties) []TransformerMoveKeyEntry { return v.Entries }).(TransformerMoveKeyEntryArrayOutput) +} + +type TransformerProcessorMoveKeysPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorMoveKeysPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorMoveKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorMoveKeysPropertiesPtrOutput) ToTransformerProcessorMoveKeysPropertiesPtrOutput() TransformerProcessorMoveKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorMoveKeysPropertiesPtrOutput) ToTransformerProcessorMoveKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorMoveKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorMoveKeysPropertiesPtrOutput) Elem() TransformerProcessorMoveKeysPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorMoveKeysProperties) TransformerProcessorMoveKeysProperties { + if v != nil { + return *v + } + var ret TransformerProcessorMoveKeysProperties + return ret + }).(TransformerProcessorMoveKeysPropertiesOutput) +} + +func (o TransformerProcessorMoveKeysPropertiesPtrOutput) Entries() TransformerMoveKeyEntryArrayOutput { + return o.ApplyT(func(v *TransformerProcessorMoveKeysProperties) []TransformerMoveKeyEntry { + if v == nil { + return nil + } + return v.Entries + }).(TransformerMoveKeyEntryArrayOutput) +} + +// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. +type TransformerProcessorParseJsonProperties struct { + Destination *string `pulumi:"destination"` + Source *string `pulumi:"source"` +} + +// TransformerProcessorParseJsonPropertiesInput is an input type that accepts TransformerProcessorParseJsonPropertiesArgs and TransformerProcessorParseJsonPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorParseJsonPropertiesInput` via: +// +// TransformerProcessorParseJsonPropertiesArgs{...} +type TransformerProcessorParseJsonPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorParseJsonPropertiesOutput() TransformerProcessorParseJsonPropertiesOutput + ToTransformerProcessorParseJsonPropertiesOutputWithContext(context.Context) TransformerProcessorParseJsonPropertiesOutput +} + +// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. +type TransformerProcessorParseJsonPropertiesArgs struct { + Destination pulumi.StringPtrInput `pulumi:"destination"` + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerProcessorParseJsonPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorParseJsonProperties)(nil)).Elem() +} + +func (i TransformerProcessorParseJsonPropertiesArgs) ToTransformerProcessorParseJsonPropertiesOutput() TransformerProcessorParseJsonPropertiesOutput { + return i.ToTransformerProcessorParseJsonPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorParseJsonPropertiesArgs) ToTransformerProcessorParseJsonPropertiesOutputWithContext(ctx context.Context) TransformerProcessorParseJsonPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorParseJsonPropertiesOutput) +} + +func (i TransformerProcessorParseJsonPropertiesArgs) ToTransformerProcessorParseJsonPropertiesPtrOutput() TransformerProcessorParseJsonPropertiesPtrOutput { + return i.ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorParseJsonPropertiesArgs) ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseJsonPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorParseJsonPropertiesOutput).ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorParseJsonPropertiesPtrInput is an input type that accepts TransformerProcessorParseJsonPropertiesArgs, TransformerProcessorParseJsonPropertiesPtr and TransformerProcessorParseJsonPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorParseJsonPropertiesPtrInput` via: +// +// TransformerProcessorParseJsonPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorParseJsonPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorParseJsonPropertiesPtrOutput() TransformerProcessorParseJsonPropertiesPtrOutput + ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(context.Context) TransformerProcessorParseJsonPropertiesPtrOutput +} + +type transformerProcessorParseJsonPropertiesPtrType TransformerProcessorParseJsonPropertiesArgs + +func TransformerProcessorParseJsonPropertiesPtr(v *TransformerProcessorParseJsonPropertiesArgs) TransformerProcessorParseJsonPropertiesPtrInput { + return (*transformerProcessorParseJsonPropertiesPtrType)(v) +} + +func (*transformerProcessorParseJsonPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorParseJsonProperties)(nil)).Elem() +} + +func (i *transformerProcessorParseJsonPropertiesPtrType) ToTransformerProcessorParseJsonPropertiesPtrOutput() TransformerProcessorParseJsonPropertiesPtrOutput { + return i.ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorParseJsonPropertiesPtrType) ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseJsonPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorParseJsonPropertiesPtrOutput) +} + +// Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. +type TransformerProcessorParseJsonPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorParseJsonPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorParseJsonProperties)(nil)).Elem() +} + +func (o TransformerProcessorParseJsonPropertiesOutput) ToTransformerProcessorParseJsonPropertiesOutput() TransformerProcessorParseJsonPropertiesOutput { + return o +} + +func (o TransformerProcessorParseJsonPropertiesOutput) ToTransformerProcessorParseJsonPropertiesOutputWithContext(ctx context.Context) TransformerProcessorParseJsonPropertiesOutput { + return o +} + +func (o TransformerProcessorParseJsonPropertiesOutput) ToTransformerProcessorParseJsonPropertiesPtrOutput() TransformerProcessorParseJsonPropertiesPtrOutput { + return o.ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorParseJsonPropertiesOutput) ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseJsonPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorParseJsonProperties) *TransformerProcessorParseJsonProperties { + return &v + }).(TransformerProcessorParseJsonPropertiesPtrOutput) +} + +func (o TransformerProcessorParseJsonPropertiesOutput) Destination() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseJsonProperties) *string { return v.Destination }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseJsonPropertiesOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseJsonProperties) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerProcessorParseJsonPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorParseJsonPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorParseJsonProperties)(nil)).Elem() +} + +func (o TransformerProcessorParseJsonPropertiesPtrOutput) ToTransformerProcessorParseJsonPropertiesPtrOutput() TransformerProcessorParseJsonPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorParseJsonPropertiesPtrOutput) ToTransformerProcessorParseJsonPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseJsonPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorParseJsonPropertiesPtrOutput) Elem() TransformerProcessorParseJsonPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorParseJsonProperties) TransformerProcessorParseJsonProperties { + if v != nil { + return *v + } + var ret TransformerProcessorParseJsonProperties + return ret + }).(TransformerProcessorParseJsonPropertiesOutput) +} + +func (o TransformerProcessorParseJsonPropertiesPtrOutput) Destination() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseJsonProperties) *string { + if v == nil { + return nil + } + return v.Destination + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseJsonPropertiesPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseJsonProperties) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. +type TransformerProcessorParseKeyValueProperties struct { + Destination *string `pulumi:"destination"` + FieldDelimiter *string `pulumi:"fieldDelimiter"` + KeyPrefix *string `pulumi:"keyPrefix"` + KeyValueDelimiter *string `pulumi:"keyValueDelimiter"` + NonMatchValue *string `pulumi:"nonMatchValue"` + OverwriteIfExists *bool `pulumi:"overwriteIfExists"` + Source *string `pulumi:"source"` +} + +// TransformerProcessorParseKeyValuePropertiesInput is an input type that accepts TransformerProcessorParseKeyValuePropertiesArgs and TransformerProcessorParseKeyValuePropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorParseKeyValuePropertiesInput` via: +// +// TransformerProcessorParseKeyValuePropertiesArgs{...} +type TransformerProcessorParseKeyValuePropertiesInput interface { + pulumi.Input + + ToTransformerProcessorParseKeyValuePropertiesOutput() TransformerProcessorParseKeyValuePropertiesOutput + ToTransformerProcessorParseKeyValuePropertiesOutputWithContext(context.Context) TransformerProcessorParseKeyValuePropertiesOutput +} + +// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. +type TransformerProcessorParseKeyValuePropertiesArgs struct { + Destination pulumi.StringPtrInput `pulumi:"destination"` + FieldDelimiter pulumi.StringPtrInput `pulumi:"fieldDelimiter"` + KeyPrefix pulumi.StringPtrInput `pulumi:"keyPrefix"` + KeyValueDelimiter pulumi.StringPtrInput `pulumi:"keyValueDelimiter"` + NonMatchValue pulumi.StringPtrInput `pulumi:"nonMatchValue"` + OverwriteIfExists pulumi.BoolPtrInput `pulumi:"overwriteIfExists"` + Source pulumi.StringPtrInput `pulumi:"source"` +} + +func (TransformerProcessorParseKeyValuePropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorParseKeyValueProperties)(nil)).Elem() +} + +func (i TransformerProcessorParseKeyValuePropertiesArgs) ToTransformerProcessorParseKeyValuePropertiesOutput() TransformerProcessorParseKeyValuePropertiesOutput { + return i.ToTransformerProcessorParseKeyValuePropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorParseKeyValuePropertiesArgs) ToTransformerProcessorParseKeyValuePropertiesOutputWithContext(ctx context.Context) TransformerProcessorParseKeyValuePropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorParseKeyValuePropertiesOutput) +} + +func (i TransformerProcessorParseKeyValuePropertiesArgs) ToTransformerProcessorParseKeyValuePropertiesPtrOutput() TransformerProcessorParseKeyValuePropertiesPtrOutput { + return i.ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorParseKeyValuePropertiesArgs) ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseKeyValuePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorParseKeyValuePropertiesOutput).ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorParseKeyValuePropertiesPtrInput is an input type that accepts TransformerProcessorParseKeyValuePropertiesArgs, TransformerProcessorParseKeyValuePropertiesPtr and TransformerProcessorParseKeyValuePropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorParseKeyValuePropertiesPtrInput` via: +// +// TransformerProcessorParseKeyValuePropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorParseKeyValuePropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorParseKeyValuePropertiesPtrOutput() TransformerProcessorParseKeyValuePropertiesPtrOutput + ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(context.Context) TransformerProcessorParseKeyValuePropertiesPtrOutput +} + +type transformerProcessorParseKeyValuePropertiesPtrType TransformerProcessorParseKeyValuePropertiesArgs + +func TransformerProcessorParseKeyValuePropertiesPtr(v *TransformerProcessorParseKeyValuePropertiesArgs) TransformerProcessorParseKeyValuePropertiesPtrInput { + return (*transformerProcessorParseKeyValuePropertiesPtrType)(v) +} + +func (*transformerProcessorParseKeyValuePropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorParseKeyValueProperties)(nil)).Elem() +} + +func (i *transformerProcessorParseKeyValuePropertiesPtrType) ToTransformerProcessorParseKeyValuePropertiesPtrOutput() TransformerProcessorParseKeyValuePropertiesPtrOutput { + return i.ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorParseKeyValuePropertiesPtrType) ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseKeyValuePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorParseKeyValuePropertiesPtrOutput) +} + +// Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. +type TransformerProcessorParseKeyValuePropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorParseKeyValuePropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorParseKeyValueProperties)(nil)).Elem() +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) ToTransformerProcessorParseKeyValuePropertiesOutput() TransformerProcessorParseKeyValuePropertiesOutput { + return o +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) ToTransformerProcessorParseKeyValuePropertiesOutputWithContext(ctx context.Context) TransformerProcessorParseKeyValuePropertiesOutput { + return o +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) ToTransformerProcessorParseKeyValuePropertiesPtrOutput() TransformerProcessorParseKeyValuePropertiesPtrOutput { + return o.ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseKeyValuePropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorParseKeyValueProperties) *TransformerProcessorParseKeyValueProperties { + return &v + }).(TransformerProcessorParseKeyValuePropertiesPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) Destination() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseKeyValueProperties) *string { return v.Destination }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) FieldDelimiter() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseKeyValueProperties) *string { return v.FieldDelimiter }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) KeyPrefix() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseKeyValueProperties) *string { return v.KeyPrefix }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) KeyValueDelimiter() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseKeyValueProperties) *string { return v.KeyValueDelimiter }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) NonMatchValue() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseKeyValueProperties) *string { return v.NonMatchValue }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) OverwriteIfExists() pulumi.BoolPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseKeyValueProperties) *bool { return v.OverwriteIfExists }).(pulumi.BoolPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v TransformerProcessorParseKeyValueProperties) *string { return v.Source }).(pulumi.StringPtrOutput) +} + +type TransformerProcessorParseKeyValuePropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorParseKeyValuePropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorParseKeyValueProperties)(nil)).Elem() +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) ToTransformerProcessorParseKeyValuePropertiesPtrOutput() TransformerProcessorParseKeyValuePropertiesPtrOutput { + return o +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) ToTransformerProcessorParseKeyValuePropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorParseKeyValuePropertiesPtrOutput { + return o +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) Elem() TransformerProcessorParseKeyValuePropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) TransformerProcessorParseKeyValueProperties { + if v != nil { + return *v + } + var ret TransformerProcessorParseKeyValueProperties + return ret + }).(TransformerProcessorParseKeyValuePropertiesOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) Destination() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) *string { + if v == nil { + return nil + } + return v.Destination + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) FieldDelimiter() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) *string { + if v == nil { + return nil + } + return v.FieldDelimiter + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) KeyPrefix() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) *string { + if v == nil { + return nil + } + return v.KeyPrefix + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) KeyValueDelimiter() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) *string { + if v == nil { + return nil + } + return v.KeyValueDelimiter + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) NonMatchValue() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) *string { + if v == nil { + return nil + } + return v.NonMatchValue + }).(pulumi.StringPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) OverwriteIfExists() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) *bool { + if v == nil { + return nil + } + return v.OverwriteIfExists + }).(pulumi.BoolPtrOutput) +} + +func (o TransformerProcessorParseKeyValuePropertiesPtrOutput) Source() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TransformerProcessorParseKeyValueProperties) *string { + if v == nil { + return nil + } + return v.Source + }).(pulumi.StringPtrOutput) +} + +// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. +type TransformerProcessorRenameKeysProperties struct { + Entries []TransformerRenameKeyEntry `pulumi:"entries"` +} + +// TransformerProcessorRenameKeysPropertiesInput is an input type that accepts TransformerProcessorRenameKeysPropertiesArgs and TransformerProcessorRenameKeysPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorRenameKeysPropertiesInput` via: +// +// TransformerProcessorRenameKeysPropertiesArgs{...} +type TransformerProcessorRenameKeysPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorRenameKeysPropertiesOutput() TransformerProcessorRenameKeysPropertiesOutput + ToTransformerProcessorRenameKeysPropertiesOutputWithContext(context.Context) TransformerProcessorRenameKeysPropertiesOutput +} + +// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. +type TransformerProcessorRenameKeysPropertiesArgs struct { + Entries TransformerRenameKeyEntryArrayInput `pulumi:"entries"` +} + +func (TransformerProcessorRenameKeysPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorRenameKeysProperties)(nil)).Elem() +} + +func (i TransformerProcessorRenameKeysPropertiesArgs) ToTransformerProcessorRenameKeysPropertiesOutput() TransformerProcessorRenameKeysPropertiesOutput { + return i.ToTransformerProcessorRenameKeysPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorRenameKeysPropertiesArgs) ToTransformerProcessorRenameKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorRenameKeysPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorRenameKeysPropertiesOutput) +} + +func (i TransformerProcessorRenameKeysPropertiesArgs) ToTransformerProcessorRenameKeysPropertiesPtrOutput() TransformerProcessorRenameKeysPropertiesPtrOutput { + return i.ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorRenameKeysPropertiesArgs) ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorRenameKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorRenameKeysPropertiesOutput).ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorRenameKeysPropertiesPtrInput is an input type that accepts TransformerProcessorRenameKeysPropertiesArgs, TransformerProcessorRenameKeysPropertiesPtr and TransformerProcessorRenameKeysPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorRenameKeysPropertiesPtrInput` via: +// +// TransformerProcessorRenameKeysPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorRenameKeysPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorRenameKeysPropertiesPtrOutput() TransformerProcessorRenameKeysPropertiesPtrOutput + ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(context.Context) TransformerProcessorRenameKeysPropertiesPtrOutput +} + +type transformerProcessorRenameKeysPropertiesPtrType TransformerProcessorRenameKeysPropertiesArgs + +func TransformerProcessorRenameKeysPropertiesPtr(v *TransformerProcessorRenameKeysPropertiesArgs) TransformerProcessorRenameKeysPropertiesPtrInput { + return (*transformerProcessorRenameKeysPropertiesPtrType)(v) +} + +func (*transformerProcessorRenameKeysPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorRenameKeysProperties)(nil)).Elem() +} + +func (i *transformerProcessorRenameKeysPropertiesPtrType) ToTransformerProcessorRenameKeysPropertiesPtrOutput() TransformerProcessorRenameKeysPropertiesPtrOutput { + return i.ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorRenameKeysPropertiesPtrType) ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorRenameKeysPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorRenameKeysPropertiesPtrOutput) +} + +// Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. +type TransformerProcessorRenameKeysPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorRenameKeysPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorRenameKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorRenameKeysPropertiesOutput) ToTransformerProcessorRenameKeysPropertiesOutput() TransformerProcessorRenameKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorRenameKeysPropertiesOutput) ToTransformerProcessorRenameKeysPropertiesOutputWithContext(ctx context.Context) TransformerProcessorRenameKeysPropertiesOutput { + return o +} + +func (o TransformerProcessorRenameKeysPropertiesOutput) ToTransformerProcessorRenameKeysPropertiesPtrOutput() TransformerProcessorRenameKeysPropertiesPtrOutput { + return o.ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorRenameKeysPropertiesOutput) ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorRenameKeysPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorRenameKeysProperties) *TransformerProcessorRenameKeysProperties { + return &v + }).(TransformerProcessorRenameKeysPropertiesPtrOutput) +} + +func (o TransformerProcessorRenameKeysPropertiesOutput) Entries() TransformerRenameKeyEntryArrayOutput { + return o.ApplyT(func(v TransformerProcessorRenameKeysProperties) []TransformerRenameKeyEntry { return v.Entries }).(TransformerRenameKeyEntryArrayOutput) +} + +type TransformerProcessorRenameKeysPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorRenameKeysPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorRenameKeysProperties)(nil)).Elem() +} + +func (o TransformerProcessorRenameKeysPropertiesPtrOutput) ToTransformerProcessorRenameKeysPropertiesPtrOutput() TransformerProcessorRenameKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorRenameKeysPropertiesPtrOutput) ToTransformerProcessorRenameKeysPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorRenameKeysPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorRenameKeysPropertiesPtrOutput) Elem() TransformerProcessorRenameKeysPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorRenameKeysProperties) TransformerProcessorRenameKeysProperties { + if v != nil { + return *v + } + var ret TransformerProcessorRenameKeysProperties + return ret + }).(TransformerProcessorRenameKeysPropertiesOutput) +} + +func (o TransformerProcessorRenameKeysPropertiesPtrOutput) Entries() TransformerRenameKeyEntryArrayOutput { + return o.ApplyT(func(v *TransformerProcessorRenameKeysProperties) []TransformerRenameKeyEntry { + if v == nil { + return nil + } + return v.Entries + }).(TransformerRenameKeyEntryArrayOutput) +} + +// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. +type TransformerProcessorSplitStringProperties struct { + Entries []TransformerSplitStringEntry `pulumi:"entries"` +} + +// TransformerProcessorSplitStringPropertiesInput is an input type that accepts TransformerProcessorSplitStringPropertiesArgs and TransformerProcessorSplitStringPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorSplitStringPropertiesInput` via: +// +// TransformerProcessorSplitStringPropertiesArgs{...} +type TransformerProcessorSplitStringPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorSplitStringPropertiesOutput() TransformerProcessorSplitStringPropertiesOutput + ToTransformerProcessorSplitStringPropertiesOutputWithContext(context.Context) TransformerProcessorSplitStringPropertiesOutput +} + +// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. +type TransformerProcessorSplitStringPropertiesArgs struct { + Entries TransformerSplitStringEntryArrayInput `pulumi:"entries"` +} + +func (TransformerProcessorSplitStringPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorSplitStringProperties)(nil)).Elem() +} + +func (i TransformerProcessorSplitStringPropertiesArgs) ToTransformerProcessorSplitStringPropertiesOutput() TransformerProcessorSplitStringPropertiesOutput { + return i.ToTransformerProcessorSplitStringPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorSplitStringPropertiesArgs) ToTransformerProcessorSplitStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorSplitStringPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorSplitStringPropertiesOutput) +} + +func (i TransformerProcessorSplitStringPropertiesArgs) ToTransformerProcessorSplitStringPropertiesPtrOutput() TransformerProcessorSplitStringPropertiesPtrOutput { + return i.ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorSplitStringPropertiesArgs) ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSplitStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorSplitStringPropertiesOutput).ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorSplitStringPropertiesPtrInput is an input type that accepts TransformerProcessorSplitStringPropertiesArgs, TransformerProcessorSplitStringPropertiesPtr and TransformerProcessorSplitStringPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorSplitStringPropertiesPtrInput` via: +// +// TransformerProcessorSplitStringPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorSplitStringPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorSplitStringPropertiesPtrOutput() TransformerProcessorSplitStringPropertiesPtrOutput + ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(context.Context) TransformerProcessorSplitStringPropertiesPtrOutput +} + +type transformerProcessorSplitStringPropertiesPtrType TransformerProcessorSplitStringPropertiesArgs + +func TransformerProcessorSplitStringPropertiesPtr(v *TransformerProcessorSplitStringPropertiesArgs) TransformerProcessorSplitStringPropertiesPtrInput { + return (*transformerProcessorSplitStringPropertiesPtrType)(v) +} + +func (*transformerProcessorSplitStringPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorSplitStringProperties)(nil)).Elem() +} + +func (i *transformerProcessorSplitStringPropertiesPtrType) ToTransformerProcessorSplitStringPropertiesPtrOutput() TransformerProcessorSplitStringPropertiesPtrOutput { + return i.ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorSplitStringPropertiesPtrType) ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSplitStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorSplitStringPropertiesPtrOutput) +} + +// Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. +type TransformerProcessorSplitStringPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorSplitStringPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorSplitStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorSplitStringPropertiesOutput) ToTransformerProcessorSplitStringPropertiesOutput() TransformerProcessorSplitStringPropertiesOutput { + return o +} + +func (o TransformerProcessorSplitStringPropertiesOutput) ToTransformerProcessorSplitStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorSplitStringPropertiesOutput { + return o +} + +func (o TransformerProcessorSplitStringPropertiesOutput) ToTransformerProcessorSplitStringPropertiesPtrOutput() TransformerProcessorSplitStringPropertiesPtrOutput { + return o.ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorSplitStringPropertiesOutput) ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSplitStringPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorSplitStringProperties) *TransformerProcessorSplitStringProperties { + return &v + }).(TransformerProcessorSplitStringPropertiesPtrOutput) +} + +func (o TransformerProcessorSplitStringPropertiesOutput) Entries() TransformerSplitStringEntryArrayOutput { + return o.ApplyT(func(v TransformerProcessorSplitStringProperties) []TransformerSplitStringEntry { return v.Entries }).(TransformerSplitStringEntryArrayOutput) +} + +type TransformerProcessorSplitStringPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorSplitStringPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorSplitStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorSplitStringPropertiesPtrOutput) ToTransformerProcessorSplitStringPropertiesPtrOutput() TransformerProcessorSplitStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorSplitStringPropertiesPtrOutput) ToTransformerProcessorSplitStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSplitStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorSplitStringPropertiesPtrOutput) Elem() TransformerProcessorSplitStringPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorSplitStringProperties) TransformerProcessorSplitStringProperties { + if v != nil { + return *v + } + var ret TransformerProcessorSplitStringProperties + return ret + }).(TransformerProcessorSplitStringPropertiesOutput) +} + +func (o TransformerProcessorSplitStringPropertiesPtrOutput) Entries() TransformerSplitStringEntryArrayOutput { + return o.ApplyT(func(v *TransformerProcessorSplitStringProperties) []TransformerSplitStringEntry { + if v == nil { + return nil + } + return v.Entries + }).(TransformerSplitStringEntryArrayOutput) +} + +// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. +type TransformerProcessorSubstituteStringProperties struct { + Entries []TransformerSubstituteStringEntry `pulumi:"entries"` +} + +// TransformerProcessorSubstituteStringPropertiesInput is an input type that accepts TransformerProcessorSubstituteStringPropertiesArgs and TransformerProcessorSubstituteStringPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorSubstituteStringPropertiesInput` via: +// +// TransformerProcessorSubstituteStringPropertiesArgs{...} +type TransformerProcessorSubstituteStringPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorSubstituteStringPropertiesOutput() TransformerProcessorSubstituteStringPropertiesOutput + ToTransformerProcessorSubstituteStringPropertiesOutputWithContext(context.Context) TransformerProcessorSubstituteStringPropertiesOutput +} + +// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. +type TransformerProcessorSubstituteStringPropertiesArgs struct { + Entries TransformerSubstituteStringEntryArrayInput `pulumi:"entries"` +} + +func (TransformerProcessorSubstituteStringPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorSubstituteStringProperties)(nil)).Elem() +} + +func (i TransformerProcessorSubstituteStringPropertiesArgs) ToTransformerProcessorSubstituteStringPropertiesOutput() TransformerProcessorSubstituteStringPropertiesOutput { + return i.ToTransformerProcessorSubstituteStringPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorSubstituteStringPropertiesArgs) ToTransformerProcessorSubstituteStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorSubstituteStringPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorSubstituteStringPropertiesOutput) +} + +func (i TransformerProcessorSubstituteStringPropertiesArgs) ToTransformerProcessorSubstituteStringPropertiesPtrOutput() TransformerProcessorSubstituteStringPropertiesPtrOutput { + return i.ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorSubstituteStringPropertiesArgs) ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSubstituteStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorSubstituteStringPropertiesOutput).ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorSubstituteStringPropertiesPtrInput is an input type that accepts TransformerProcessorSubstituteStringPropertiesArgs, TransformerProcessorSubstituteStringPropertiesPtr and TransformerProcessorSubstituteStringPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorSubstituteStringPropertiesPtrInput` via: +// +// TransformerProcessorSubstituteStringPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorSubstituteStringPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorSubstituteStringPropertiesPtrOutput() TransformerProcessorSubstituteStringPropertiesPtrOutput + ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(context.Context) TransformerProcessorSubstituteStringPropertiesPtrOutput +} + +type transformerProcessorSubstituteStringPropertiesPtrType TransformerProcessorSubstituteStringPropertiesArgs + +func TransformerProcessorSubstituteStringPropertiesPtr(v *TransformerProcessorSubstituteStringPropertiesArgs) TransformerProcessorSubstituteStringPropertiesPtrInput { + return (*transformerProcessorSubstituteStringPropertiesPtrType)(v) +} + +func (*transformerProcessorSubstituteStringPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorSubstituteStringProperties)(nil)).Elem() +} + +func (i *transformerProcessorSubstituteStringPropertiesPtrType) ToTransformerProcessorSubstituteStringPropertiesPtrOutput() TransformerProcessorSubstituteStringPropertiesPtrOutput { + return i.ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorSubstituteStringPropertiesPtrType) ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSubstituteStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorSubstituteStringPropertiesPtrOutput) +} + +// Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. +type TransformerProcessorSubstituteStringPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorSubstituteStringPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorSubstituteStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorSubstituteStringPropertiesOutput) ToTransformerProcessorSubstituteStringPropertiesOutput() TransformerProcessorSubstituteStringPropertiesOutput { + return o +} + +func (o TransformerProcessorSubstituteStringPropertiesOutput) ToTransformerProcessorSubstituteStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorSubstituteStringPropertiesOutput { + return o +} + +func (o TransformerProcessorSubstituteStringPropertiesOutput) ToTransformerProcessorSubstituteStringPropertiesPtrOutput() TransformerProcessorSubstituteStringPropertiesPtrOutput { + return o.ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorSubstituteStringPropertiesOutput) ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSubstituteStringPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorSubstituteStringProperties) *TransformerProcessorSubstituteStringProperties { + return &v + }).(TransformerProcessorSubstituteStringPropertiesPtrOutput) +} + +func (o TransformerProcessorSubstituteStringPropertiesOutput) Entries() TransformerSubstituteStringEntryArrayOutput { + return o.ApplyT(func(v TransformerProcessorSubstituteStringProperties) []TransformerSubstituteStringEntry { + return v.Entries + }).(TransformerSubstituteStringEntryArrayOutput) +} + +type TransformerProcessorSubstituteStringPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorSubstituteStringPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorSubstituteStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorSubstituteStringPropertiesPtrOutput) ToTransformerProcessorSubstituteStringPropertiesPtrOutput() TransformerProcessorSubstituteStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorSubstituteStringPropertiesPtrOutput) ToTransformerProcessorSubstituteStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorSubstituteStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorSubstituteStringPropertiesPtrOutput) Elem() TransformerProcessorSubstituteStringPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorSubstituteStringProperties) TransformerProcessorSubstituteStringProperties { + if v != nil { + return *v + } + var ret TransformerProcessorSubstituteStringProperties + return ret + }).(TransformerProcessorSubstituteStringPropertiesOutput) +} + +func (o TransformerProcessorSubstituteStringPropertiesPtrOutput) Entries() TransformerSubstituteStringEntryArrayOutput { + return o.ApplyT(func(v *TransformerProcessorSubstituteStringProperties) []TransformerSubstituteStringEntry { + if v == nil { + return nil + } + return v.Entries + }).(TransformerSubstituteStringEntryArrayOutput) +} + +// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. +type TransformerProcessorTrimStringProperties struct { + WithKeys []string `pulumi:"withKeys"` +} + +// TransformerProcessorTrimStringPropertiesInput is an input type that accepts TransformerProcessorTrimStringPropertiesArgs and TransformerProcessorTrimStringPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorTrimStringPropertiesInput` via: +// +// TransformerProcessorTrimStringPropertiesArgs{...} +type TransformerProcessorTrimStringPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorTrimStringPropertiesOutput() TransformerProcessorTrimStringPropertiesOutput + ToTransformerProcessorTrimStringPropertiesOutputWithContext(context.Context) TransformerProcessorTrimStringPropertiesOutput +} + +// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. +type TransformerProcessorTrimStringPropertiesArgs struct { + WithKeys pulumi.StringArrayInput `pulumi:"withKeys"` +} + +func (TransformerProcessorTrimStringPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorTrimStringProperties)(nil)).Elem() +} + +func (i TransformerProcessorTrimStringPropertiesArgs) ToTransformerProcessorTrimStringPropertiesOutput() TransformerProcessorTrimStringPropertiesOutput { + return i.ToTransformerProcessorTrimStringPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorTrimStringPropertiesArgs) ToTransformerProcessorTrimStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorTrimStringPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorTrimStringPropertiesOutput) +} + +func (i TransformerProcessorTrimStringPropertiesArgs) ToTransformerProcessorTrimStringPropertiesPtrOutput() TransformerProcessorTrimStringPropertiesPtrOutput { + return i.ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorTrimStringPropertiesArgs) ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTrimStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorTrimStringPropertiesOutput).ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorTrimStringPropertiesPtrInput is an input type that accepts TransformerProcessorTrimStringPropertiesArgs, TransformerProcessorTrimStringPropertiesPtr and TransformerProcessorTrimStringPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorTrimStringPropertiesPtrInput` via: +// +// TransformerProcessorTrimStringPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorTrimStringPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorTrimStringPropertiesPtrOutput() TransformerProcessorTrimStringPropertiesPtrOutput + ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(context.Context) TransformerProcessorTrimStringPropertiesPtrOutput +} + +type transformerProcessorTrimStringPropertiesPtrType TransformerProcessorTrimStringPropertiesArgs + +func TransformerProcessorTrimStringPropertiesPtr(v *TransformerProcessorTrimStringPropertiesArgs) TransformerProcessorTrimStringPropertiesPtrInput { + return (*transformerProcessorTrimStringPropertiesPtrType)(v) +} + +func (*transformerProcessorTrimStringPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorTrimStringProperties)(nil)).Elem() +} + +func (i *transformerProcessorTrimStringPropertiesPtrType) ToTransformerProcessorTrimStringPropertiesPtrOutput() TransformerProcessorTrimStringPropertiesPtrOutput { + return i.ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorTrimStringPropertiesPtrType) ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTrimStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorTrimStringPropertiesPtrOutput) +} + +// Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. +type TransformerProcessorTrimStringPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorTrimStringPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorTrimStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorTrimStringPropertiesOutput) ToTransformerProcessorTrimStringPropertiesOutput() TransformerProcessorTrimStringPropertiesOutput { + return o +} + +func (o TransformerProcessorTrimStringPropertiesOutput) ToTransformerProcessorTrimStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorTrimStringPropertiesOutput { + return o +} + +func (o TransformerProcessorTrimStringPropertiesOutput) ToTransformerProcessorTrimStringPropertiesPtrOutput() TransformerProcessorTrimStringPropertiesPtrOutput { + return o.ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorTrimStringPropertiesOutput) ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTrimStringPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorTrimStringProperties) *TransformerProcessorTrimStringProperties { + return &v + }).(TransformerProcessorTrimStringPropertiesPtrOutput) +} + +func (o TransformerProcessorTrimStringPropertiesOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v TransformerProcessorTrimStringProperties) []string { return v.WithKeys }).(pulumi.StringArrayOutput) +} + +type TransformerProcessorTrimStringPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorTrimStringPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorTrimStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorTrimStringPropertiesPtrOutput) ToTransformerProcessorTrimStringPropertiesPtrOutput() TransformerProcessorTrimStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorTrimStringPropertiesPtrOutput) ToTransformerProcessorTrimStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTrimStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorTrimStringPropertiesPtrOutput) Elem() TransformerProcessorTrimStringPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorTrimStringProperties) TransformerProcessorTrimStringProperties { + if v != nil { + return *v + } + var ret TransformerProcessorTrimStringProperties + return ret + }).(TransformerProcessorTrimStringPropertiesOutput) +} + +func (o TransformerProcessorTrimStringPropertiesPtrOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v *TransformerProcessorTrimStringProperties) []string { + if v == nil { + return nil + } + return v.WithKeys + }).(pulumi.StringArrayOutput) +} + +// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. +type TransformerProcessorTypeConverterProperties struct { + Entries []TransformerTypeConverterEntry `pulumi:"entries"` +} + +// TransformerProcessorTypeConverterPropertiesInput is an input type that accepts TransformerProcessorTypeConverterPropertiesArgs and TransformerProcessorTypeConverterPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorTypeConverterPropertiesInput` via: +// +// TransformerProcessorTypeConverterPropertiesArgs{...} +type TransformerProcessorTypeConverterPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorTypeConverterPropertiesOutput() TransformerProcessorTypeConverterPropertiesOutput + ToTransformerProcessorTypeConverterPropertiesOutputWithContext(context.Context) TransformerProcessorTypeConverterPropertiesOutput +} + +// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. +type TransformerProcessorTypeConverterPropertiesArgs struct { + Entries TransformerTypeConverterEntryArrayInput `pulumi:"entries"` +} + +func (TransformerProcessorTypeConverterPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorTypeConverterProperties)(nil)).Elem() +} + +func (i TransformerProcessorTypeConverterPropertiesArgs) ToTransformerProcessorTypeConverterPropertiesOutput() TransformerProcessorTypeConverterPropertiesOutput { + return i.ToTransformerProcessorTypeConverterPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorTypeConverterPropertiesArgs) ToTransformerProcessorTypeConverterPropertiesOutputWithContext(ctx context.Context) TransformerProcessorTypeConverterPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorTypeConverterPropertiesOutput) +} + +func (i TransformerProcessorTypeConverterPropertiesArgs) ToTransformerProcessorTypeConverterPropertiesPtrOutput() TransformerProcessorTypeConverterPropertiesPtrOutput { + return i.ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorTypeConverterPropertiesArgs) ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTypeConverterPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorTypeConverterPropertiesOutput).ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorTypeConverterPropertiesPtrInput is an input type that accepts TransformerProcessorTypeConverterPropertiesArgs, TransformerProcessorTypeConverterPropertiesPtr and TransformerProcessorTypeConverterPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorTypeConverterPropertiesPtrInput` via: +// +// TransformerProcessorTypeConverterPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorTypeConverterPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorTypeConverterPropertiesPtrOutput() TransformerProcessorTypeConverterPropertiesPtrOutput + ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(context.Context) TransformerProcessorTypeConverterPropertiesPtrOutput +} + +type transformerProcessorTypeConverterPropertiesPtrType TransformerProcessorTypeConverterPropertiesArgs + +func TransformerProcessorTypeConverterPropertiesPtr(v *TransformerProcessorTypeConverterPropertiesArgs) TransformerProcessorTypeConverterPropertiesPtrInput { + return (*transformerProcessorTypeConverterPropertiesPtrType)(v) +} + +func (*transformerProcessorTypeConverterPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorTypeConverterProperties)(nil)).Elem() +} + +func (i *transformerProcessorTypeConverterPropertiesPtrType) ToTransformerProcessorTypeConverterPropertiesPtrOutput() TransformerProcessorTypeConverterPropertiesPtrOutput { + return i.ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorTypeConverterPropertiesPtrType) ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTypeConverterPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorTypeConverterPropertiesPtrOutput) +} + +// Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. +type TransformerProcessorTypeConverterPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorTypeConverterPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorTypeConverterProperties)(nil)).Elem() +} + +func (o TransformerProcessorTypeConverterPropertiesOutput) ToTransformerProcessorTypeConverterPropertiesOutput() TransformerProcessorTypeConverterPropertiesOutput { + return o +} + +func (o TransformerProcessorTypeConverterPropertiesOutput) ToTransformerProcessorTypeConverterPropertiesOutputWithContext(ctx context.Context) TransformerProcessorTypeConverterPropertiesOutput { + return o +} + +func (o TransformerProcessorTypeConverterPropertiesOutput) ToTransformerProcessorTypeConverterPropertiesPtrOutput() TransformerProcessorTypeConverterPropertiesPtrOutput { + return o.ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorTypeConverterPropertiesOutput) ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTypeConverterPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorTypeConverterProperties) *TransformerProcessorTypeConverterProperties { + return &v + }).(TransformerProcessorTypeConverterPropertiesPtrOutput) +} + +func (o TransformerProcessorTypeConverterPropertiesOutput) Entries() TransformerTypeConverterEntryArrayOutput { + return o.ApplyT(func(v TransformerProcessorTypeConverterProperties) []TransformerTypeConverterEntry { return v.Entries }).(TransformerTypeConverterEntryArrayOutput) +} + +type TransformerProcessorTypeConverterPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorTypeConverterPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorTypeConverterProperties)(nil)).Elem() +} + +func (o TransformerProcessorTypeConverterPropertiesPtrOutput) ToTransformerProcessorTypeConverterPropertiesPtrOutput() TransformerProcessorTypeConverterPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorTypeConverterPropertiesPtrOutput) ToTransformerProcessorTypeConverterPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorTypeConverterPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorTypeConverterPropertiesPtrOutput) Elem() TransformerProcessorTypeConverterPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorTypeConverterProperties) TransformerProcessorTypeConverterProperties { + if v != nil { + return *v + } + var ret TransformerProcessorTypeConverterProperties + return ret + }).(TransformerProcessorTypeConverterPropertiesOutput) +} + +func (o TransformerProcessorTypeConverterPropertiesPtrOutput) Entries() TransformerTypeConverterEntryArrayOutput { + return o.ApplyT(func(v *TransformerProcessorTypeConverterProperties) []TransformerTypeConverterEntry { + if v == nil { + return nil + } + return v.Entries + }).(TransformerTypeConverterEntryArrayOutput) +} + +// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. +type TransformerProcessorUpperCaseStringProperties struct { + WithKeys []string `pulumi:"withKeys"` +} + +// TransformerProcessorUpperCaseStringPropertiesInput is an input type that accepts TransformerProcessorUpperCaseStringPropertiesArgs and TransformerProcessorUpperCaseStringPropertiesOutput values. +// You can construct a concrete instance of `TransformerProcessorUpperCaseStringPropertiesInput` via: +// +// TransformerProcessorUpperCaseStringPropertiesArgs{...} +type TransformerProcessorUpperCaseStringPropertiesInput interface { + pulumi.Input + + ToTransformerProcessorUpperCaseStringPropertiesOutput() TransformerProcessorUpperCaseStringPropertiesOutput + ToTransformerProcessorUpperCaseStringPropertiesOutputWithContext(context.Context) TransformerProcessorUpperCaseStringPropertiesOutput +} + +// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. +type TransformerProcessorUpperCaseStringPropertiesArgs struct { + WithKeys pulumi.StringArrayInput `pulumi:"withKeys"` +} + +func (TransformerProcessorUpperCaseStringPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorUpperCaseStringProperties)(nil)).Elem() +} + +func (i TransformerProcessorUpperCaseStringPropertiesArgs) ToTransformerProcessorUpperCaseStringPropertiesOutput() TransformerProcessorUpperCaseStringPropertiesOutput { + return i.ToTransformerProcessorUpperCaseStringPropertiesOutputWithContext(context.Background()) +} + +func (i TransformerProcessorUpperCaseStringPropertiesArgs) ToTransformerProcessorUpperCaseStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorUpperCaseStringPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorUpperCaseStringPropertiesOutput) +} + +func (i TransformerProcessorUpperCaseStringPropertiesArgs) ToTransformerProcessorUpperCaseStringPropertiesPtrOutput() TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return i.ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i TransformerProcessorUpperCaseStringPropertiesArgs) ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorUpperCaseStringPropertiesOutput).ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(ctx) +} + +// TransformerProcessorUpperCaseStringPropertiesPtrInput is an input type that accepts TransformerProcessorUpperCaseStringPropertiesArgs, TransformerProcessorUpperCaseStringPropertiesPtr and TransformerProcessorUpperCaseStringPropertiesPtrOutput values. +// You can construct a concrete instance of `TransformerProcessorUpperCaseStringPropertiesPtrInput` via: +// +// TransformerProcessorUpperCaseStringPropertiesArgs{...} +// +// or: +// +// nil +type TransformerProcessorUpperCaseStringPropertiesPtrInput interface { + pulumi.Input + + ToTransformerProcessorUpperCaseStringPropertiesPtrOutput() TransformerProcessorUpperCaseStringPropertiesPtrOutput + ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(context.Context) TransformerProcessorUpperCaseStringPropertiesPtrOutput +} + +type transformerProcessorUpperCaseStringPropertiesPtrType TransformerProcessorUpperCaseStringPropertiesArgs + +func TransformerProcessorUpperCaseStringPropertiesPtr(v *TransformerProcessorUpperCaseStringPropertiesArgs) TransformerProcessorUpperCaseStringPropertiesPtrInput { + return (*transformerProcessorUpperCaseStringPropertiesPtrType)(v) +} + +func (*transformerProcessorUpperCaseStringPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorUpperCaseStringProperties)(nil)).Elem() +} + +func (i *transformerProcessorUpperCaseStringPropertiesPtrType) ToTransformerProcessorUpperCaseStringPropertiesPtrOutput() TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return i.ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *transformerProcessorUpperCaseStringPropertiesPtrType) ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerProcessorUpperCaseStringPropertiesPtrOutput) +} + +// Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. +type TransformerProcessorUpperCaseStringPropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorUpperCaseStringPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerProcessorUpperCaseStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorUpperCaseStringPropertiesOutput) ToTransformerProcessorUpperCaseStringPropertiesOutput() TransformerProcessorUpperCaseStringPropertiesOutput { + return o +} + +func (o TransformerProcessorUpperCaseStringPropertiesOutput) ToTransformerProcessorUpperCaseStringPropertiesOutputWithContext(ctx context.Context) TransformerProcessorUpperCaseStringPropertiesOutput { + return o +} + +func (o TransformerProcessorUpperCaseStringPropertiesOutput) ToTransformerProcessorUpperCaseStringPropertiesPtrOutput() TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return o.ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(context.Background()) +} + +func (o TransformerProcessorUpperCaseStringPropertiesOutput) ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerProcessorUpperCaseStringProperties) *TransformerProcessorUpperCaseStringProperties { + return &v + }).(TransformerProcessorUpperCaseStringPropertiesPtrOutput) +} + +func (o TransformerProcessorUpperCaseStringPropertiesOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v TransformerProcessorUpperCaseStringProperties) []string { return v.WithKeys }).(pulumi.StringArrayOutput) +} + +type TransformerProcessorUpperCaseStringPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerProcessorUpperCaseStringPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerProcessorUpperCaseStringProperties)(nil)).Elem() +} + +func (o TransformerProcessorUpperCaseStringPropertiesPtrOutput) ToTransformerProcessorUpperCaseStringPropertiesPtrOutput() TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorUpperCaseStringPropertiesPtrOutput) ToTransformerProcessorUpperCaseStringPropertiesPtrOutputWithContext(ctx context.Context) TransformerProcessorUpperCaseStringPropertiesPtrOutput { + return o +} + +func (o TransformerProcessorUpperCaseStringPropertiesPtrOutput) Elem() TransformerProcessorUpperCaseStringPropertiesOutput { + return o.ApplyT(func(v *TransformerProcessorUpperCaseStringProperties) TransformerProcessorUpperCaseStringProperties { + if v != nil { + return *v + } + var ret TransformerProcessorUpperCaseStringProperties + return ret + }).(TransformerProcessorUpperCaseStringPropertiesOutput) +} + +func (o TransformerProcessorUpperCaseStringPropertiesPtrOutput) WithKeys() pulumi.StringArrayOutput { + return o.ApplyT(func(v *TransformerProcessorUpperCaseStringProperties) []string { + if v == nil { + return nil + } + return v.WithKeys + }).(pulumi.StringArrayOutput) +} + +type TransformerRenameKeyEntry struct { + Key string `pulumi:"key"` + OverwriteIfExists *bool `pulumi:"overwriteIfExists"` + RenameTo string `pulumi:"renameTo"` +} + +// TransformerRenameKeyEntryInput is an input type that accepts TransformerRenameKeyEntryArgs and TransformerRenameKeyEntryOutput values. +// You can construct a concrete instance of `TransformerRenameKeyEntryInput` via: +// +// TransformerRenameKeyEntryArgs{...} +type TransformerRenameKeyEntryInput interface { + pulumi.Input + + ToTransformerRenameKeyEntryOutput() TransformerRenameKeyEntryOutput + ToTransformerRenameKeyEntryOutputWithContext(context.Context) TransformerRenameKeyEntryOutput +} + +type TransformerRenameKeyEntryArgs struct { + Key pulumi.StringInput `pulumi:"key"` + OverwriteIfExists pulumi.BoolPtrInput `pulumi:"overwriteIfExists"` + RenameTo pulumi.StringInput `pulumi:"renameTo"` +} + +func (TransformerRenameKeyEntryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerRenameKeyEntry)(nil)).Elem() +} + +func (i TransformerRenameKeyEntryArgs) ToTransformerRenameKeyEntryOutput() TransformerRenameKeyEntryOutput { + return i.ToTransformerRenameKeyEntryOutputWithContext(context.Background()) +} + +func (i TransformerRenameKeyEntryArgs) ToTransformerRenameKeyEntryOutputWithContext(ctx context.Context) TransformerRenameKeyEntryOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerRenameKeyEntryOutput) +} + +// TransformerRenameKeyEntryArrayInput is an input type that accepts TransformerRenameKeyEntryArray and TransformerRenameKeyEntryArrayOutput values. +// You can construct a concrete instance of `TransformerRenameKeyEntryArrayInput` via: +// +// TransformerRenameKeyEntryArray{ TransformerRenameKeyEntryArgs{...} } +type TransformerRenameKeyEntryArrayInput interface { + pulumi.Input + + ToTransformerRenameKeyEntryArrayOutput() TransformerRenameKeyEntryArrayOutput + ToTransformerRenameKeyEntryArrayOutputWithContext(context.Context) TransformerRenameKeyEntryArrayOutput +} + +type TransformerRenameKeyEntryArray []TransformerRenameKeyEntryInput + +func (TransformerRenameKeyEntryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerRenameKeyEntry)(nil)).Elem() +} + +func (i TransformerRenameKeyEntryArray) ToTransformerRenameKeyEntryArrayOutput() TransformerRenameKeyEntryArrayOutput { + return i.ToTransformerRenameKeyEntryArrayOutputWithContext(context.Background()) +} + +func (i TransformerRenameKeyEntryArray) ToTransformerRenameKeyEntryArrayOutputWithContext(ctx context.Context) TransformerRenameKeyEntryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerRenameKeyEntryArrayOutput) +} + +type TransformerRenameKeyEntryOutput struct{ *pulumi.OutputState } + +func (TransformerRenameKeyEntryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerRenameKeyEntry)(nil)).Elem() +} + +func (o TransformerRenameKeyEntryOutput) ToTransformerRenameKeyEntryOutput() TransformerRenameKeyEntryOutput { + return o +} + +func (o TransformerRenameKeyEntryOutput) ToTransformerRenameKeyEntryOutputWithContext(ctx context.Context) TransformerRenameKeyEntryOutput { + return o +} + +func (o TransformerRenameKeyEntryOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v TransformerRenameKeyEntry) string { return v.Key }).(pulumi.StringOutput) +} + +func (o TransformerRenameKeyEntryOutput) OverwriteIfExists() pulumi.BoolPtrOutput { + return o.ApplyT(func(v TransformerRenameKeyEntry) *bool { return v.OverwriteIfExists }).(pulumi.BoolPtrOutput) +} + +func (o TransformerRenameKeyEntryOutput) RenameTo() pulumi.StringOutput { + return o.ApplyT(func(v TransformerRenameKeyEntry) string { return v.RenameTo }).(pulumi.StringOutput) +} + +type TransformerRenameKeyEntryArrayOutput struct{ *pulumi.OutputState } + +func (TransformerRenameKeyEntryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerRenameKeyEntry)(nil)).Elem() +} + +func (o TransformerRenameKeyEntryArrayOutput) ToTransformerRenameKeyEntryArrayOutput() TransformerRenameKeyEntryArrayOutput { + return o +} + +func (o TransformerRenameKeyEntryArrayOutput) ToTransformerRenameKeyEntryArrayOutputWithContext(ctx context.Context) TransformerRenameKeyEntryArrayOutput { + return o +} + +func (o TransformerRenameKeyEntryArrayOutput) Index(i pulumi.IntInput) TransformerRenameKeyEntryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerRenameKeyEntry { + return vs[0].([]TransformerRenameKeyEntry)[vs[1].(int)] + }).(TransformerRenameKeyEntryOutput) +} + +type TransformerSplitStringEntry struct { + Delimiter string `pulumi:"delimiter"` + Source string `pulumi:"source"` +} + +// TransformerSplitStringEntryInput is an input type that accepts TransformerSplitStringEntryArgs and TransformerSplitStringEntryOutput values. +// You can construct a concrete instance of `TransformerSplitStringEntryInput` via: +// +// TransformerSplitStringEntryArgs{...} +type TransformerSplitStringEntryInput interface { + pulumi.Input + + ToTransformerSplitStringEntryOutput() TransformerSplitStringEntryOutput + ToTransformerSplitStringEntryOutputWithContext(context.Context) TransformerSplitStringEntryOutput +} + +type TransformerSplitStringEntryArgs struct { + Delimiter pulumi.StringInput `pulumi:"delimiter"` + Source pulumi.StringInput `pulumi:"source"` +} + +func (TransformerSplitStringEntryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerSplitStringEntry)(nil)).Elem() +} + +func (i TransformerSplitStringEntryArgs) ToTransformerSplitStringEntryOutput() TransformerSplitStringEntryOutput { + return i.ToTransformerSplitStringEntryOutputWithContext(context.Background()) +} + +func (i TransformerSplitStringEntryArgs) ToTransformerSplitStringEntryOutputWithContext(ctx context.Context) TransformerSplitStringEntryOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerSplitStringEntryOutput) +} + +// TransformerSplitStringEntryArrayInput is an input type that accepts TransformerSplitStringEntryArray and TransformerSplitStringEntryArrayOutput values. +// You can construct a concrete instance of `TransformerSplitStringEntryArrayInput` via: +// +// TransformerSplitStringEntryArray{ TransformerSplitStringEntryArgs{...} } +type TransformerSplitStringEntryArrayInput interface { + pulumi.Input + + ToTransformerSplitStringEntryArrayOutput() TransformerSplitStringEntryArrayOutput + ToTransformerSplitStringEntryArrayOutputWithContext(context.Context) TransformerSplitStringEntryArrayOutput +} + +type TransformerSplitStringEntryArray []TransformerSplitStringEntryInput + +func (TransformerSplitStringEntryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerSplitStringEntry)(nil)).Elem() +} + +func (i TransformerSplitStringEntryArray) ToTransformerSplitStringEntryArrayOutput() TransformerSplitStringEntryArrayOutput { + return i.ToTransformerSplitStringEntryArrayOutputWithContext(context.Background()) +} + +func (i TransformerSplitStringEntryArray) ToTransformerSplitStringEntryArrayOutputWithContext(ctx context.Context) TransformerSplitStringEntryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerSplitStringEntryArrayOutput) +} + +type TransformerSplitStringEntryOutput struct{ *pulumi.OutputState } + +func (TransformerSplitStringEntryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerSplitStringEntry)(nil)).Elem() +} + +func (o TransformerSplitStringEntryOutput) ToTransformerSplitStringEntryOutput() TransformerSplitStringEntryOutput { + return o +} + +func (o TransformerSplitStringEntryOutput) ToTransformerSplitStringEntryOutputWithContext(ctx context.Context) TransformerSplitStringEntryOutput { + return o +} + +func (o TransformerSplitStringEntryOutput) Delimiter() pulumi.StringOutput { + return o.ApplyT(func(v TransformerSplitStringEntry) string { return v.Delimiter }).(pulumi.StringOutput) +} + +func (o TransformerSplitStringEntryOutput) Source() pulumi.StringOutput { + return o.ApplyT(func(v TransformerSplitStringEntry) string { return v.Source }).(pulumi.StringOutput) +} + +type TransformerSplitStringEntryArrayOutput struct{ *pulumi.OutputState } + +func (TransformerSplitStringEntryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerSplitStringEntry)(nil)).Elem() +} + +func (o TransformerSplitStringEntryArrayOutput) ToTransformerSplitStringEntryArrayOutput() TransformerSplitStringEntryArrayOutput { + return o +} + +func (o TransformerSplitStringEntryArrayOutput) ToTransformerSplitStringEntryArrayOutputWithContext(ctx context.Context) TransformerSplitStringEntryArrayOutput { + return o +} + +func (o TransformerSplitStringEntryArrayOutput) Index(i pulumi.IntInput) TransformerSplitStringEntryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerSplitStringEntry { + return vs[0].([]TransformerSplitStringEntry)[vs[1].(int)] + }).(TransformerSplitStringEntryOutput) +} + +type TransformerSubstituteStringEntry struct { + From string `pulumi:"from"` + Source string `pulumi:"source"` + To string `pulumi:"to"` +} + +// TransformerSubstituteStringEntryInput is an input type that accepts TransformerSubstituteStringEntryArgs and TransformerSubstituteStringEntryOutput values. +// You can construct a concrete instance of `TransformerSubstituteStringEntryInput` via: +// +// TransformerSubstituteStringEntryArgs{...} +type TransformerSubstituteStringEntryInput interface { + pulumi.Input + + ToTransformerSubstituteStringEntryOutput() TransformerSubstituteStringEntryOutput + ToTransformerSubstituteStringEntryOutputWithContext(context.Context) TransformerSubstituteStringEntryOutput +} + +type TransformerSubstituteStringEntryArgs struct { + From pulumi.StringInput `pulumi:"from"` + Source pulumi.StringInput `pulumi:"source"` + To pulumi.StringInput `pulumi:"to"` +} + +func (TransformerSubstituteStringEntryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerSubstituteStringEntry)(nil)).Elem() +} + +func (i TransformerSubstituteStringEntryArgs) ToTransformerSubstituteStringEntryOutput() TransformerSubstituteStringEntryOutput { + return i.ToTransformerSubstituteStringEntryOutputWithContext(context.Background()) +} + +func (i TransformerSubstituteStringEntryArgs) ToTransformerSubstituteStringEntryOutputWithContext(ctx context.Context) TransformerSubstituteStringEntryOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerSubstituteStringEntryOutput) +} + +// TransformerSubstituteStringEntryArrayInput is an input type that accepts TransformerSubstituteStringEntryArray and TransformerSubstituteStringEntryArrayOutput values. +// You can construct a concrete instance of `TransformerSubstituteStringEntryArrayInput` via: +// +// TransformerSubstituteStringEntryArray{ TransformerSubstituteStringEntryArgs{...} } +type TransformerSubstituteStringEntryArrayInput interface { + pulumi.Input + + ToTransformerSubstituteStringEntryArrayOutput() TransformerSubstituteStringEntryArrayOutput + ToTransformerSubstituteStringEntryArrayOutputWithContext(context.Context) TransformerSubstituteStringEntryArrayOutput +} + +type TransformerSubstituteStringEntryArray []TransformerSubstituteStringEntryInput + +func (TransformerSubstituteStringEntryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerSubstituteStringEntry)(nil)).Elem() +} + +func (i TransformerSubstituteStringEntryArray) ToTransformerSubstituteStringEntryArrayOutput() TransformerSubstituteStringEntryArrayOutput { + return i.ToTransformerSubstituteStringEntryArrayOutputWithContext(context.Background()) +} + +func (i TransformerSubstituteStringEntryArray) ToTransformerSubstituteStringEntryArrayOutputWithContext(ctx context.Context) TransformerSubstituteStringEntryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerSubstituteStringEntryArrayOutput) +} + +type TransformerSubstituteStringEntryOutput struct{ *pulumi.OutputState } + +func (TransformerSubstituteStringEntryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerSubstituteStringEntry)(nil)).Elem() +} + +func (o TransformerSubstituteStringEntryOutput) ToTransformerSubstituteStringEntryOutput() TransformerSubstituteStringEntryOutput { + return o +} + +func (o TransformerSubstituteStringEntryOutput) ToTransformerSubstituteStringEntryOutputWithContext(ctx context.Context) TransformerSubstituteStringEntryOutput { + return o +} + +func (o TransformerSubstituteStringEntryOutput) From() pulumi.StringOutput { + return o.ApplyT(func(v TransformerSubstituteStringEntry) string { return v.From }).(pulumi.StringOutput) +} + +func (o TransformerSubstituteStringEntryOutput) Source() pulumi.StringOutput { + return o.ApplyT(func(v TransformerSubstituteStringEntry) string { return v.Source }).(pulumi.StringOutput) +} + +func (o TransformerSubstituteStringEntryOutput) To() pulumi.StringOutput { + return o.ApplyT(func(v TransformerSubstituteStringEntry) string { return v.To }).(pulumi.StringOutput) +} + +type TransformerSubstituteStringEntryArrayOutput struct{ *pulumi.OutputState } + +func (TransformerSubstituteStringEntryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerSubstituteStringEntry)(nil)).Elem() +} + +func (o TransformerSubstituteStringEntryArrayOutput) ToTransformerSubstituteStringEntryArrayOutput() TransformerSubstituteStringEntryArrayOutput { + return o +} + +func (o TransformerSubstituteStringEntryArrayOutput) ToTransformerSubstituteStringEntryArrayOutputWithContext(ctx context.Context) TransformerSubstituteStringEntryArrayOutput { + return o +} + +func (o TransformerSubstituteStringEntryArrayOutput) Index(i pulumi.IntInput) TransformerSubstituteStringEntryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerSubstituteStringEntry { + return vs[0].([]TransformerSubstituteStringEntry)[vs[1].(int)] + }).(TransformerSubstituteStringEntryOutput) +} + +type TransformerTypeConverterEntry struct { + Key string `pulumi:"key"` + Type TransformerTypeConverterEntryType `pulumi:"type"` +} + +// TransformerTypeConverterEntryInput is an input type that accepts TransformerTypeConverterEntryArgs and TransformerTypeConverterEntryOutput values. +// You can construct a concrete instance of `TransformerTypeConverterEntryInput` via: +// +// TransformerTypeConverterEntryArgs{...} +type TransformerTypeConverterEntryInput interface { + pulumi.Input + + ToTransformerTypeConverterEntryOutput() TransformerTypeConverterEntryOutput + ToTransformerTypeConverterEntryOutputWithContext(context.Context) TransformerTypeConverterEntryOutput +} + +type TransformerTypeConverterEntryArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Type TransformerTypeConverterEntryTypeInput `pulumi:"type"` +} + +func (TransformerTypeConverterEntryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerTypeConverterEntry)(nil)).Elem() +} + +func (i TransformerTypeConverterEntryArgs) ToTransformerTypeConverterEntryOutput() TransformerTypeConverterEntryOutput { + return i.ToTransformerTypeConverterEntryOutputWithContext(context.Background()) +} + +func (i TransformerTypeConverterEntryArgs) ToTransformerTypeConverterEntryOutputWithContext(ctx context.Context) TransformerTypeConverterEntryOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerTypeConverterEntryOutput) +} + +// TransformerTypeConverterEntryArrayInput is an input type that accepts TransformerTypeConverterEntryArray and TransformerTypeConverterEntryArrayOutput values. +// You can construct a concrete instance of `TransformerTypeConverterEntryArrayInput` via: +// +// TransformerTypeConverterEntryArray{ TransformerTypeConverterEntryArgs{...} } +type TransformerTypeConverterEntryArrayInput interface { + pulumi.Input + + ToTransformerTypeConverterEntryArrayOutput() TransformerTypeConverterEntryArrayOutput + ToTransformerTypeConverterEntryArrayOutputWithContext(context.Context) TransformerTypeConverterEntryArrayOutput +} + +type TransformerTypeConverterEntryArray []TransformerTypeConverterEntryInput + +func (TransformerTypeConverterEntryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerTypeConverterEntry)(nil)).Elem() +} + +func (i TransformerTypeConverterEntryArray) ToTransformerTypeConverterEntryArrayOutput() TransformerTypeConverterEntryArrayOutput { + return i.ToTransformerTypeConverterEntryArrayOutputWithContext(context.Background()) +} + +func (i TransformerTypeConverterEntryArray) ToTransformerTypeConverterEntryArrayOutputWithContext(ctx context.Context) TransformerTypeConverterEntryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerTypeConverterEntryArrayOutput) +} + +type TransformerTypeConverterEntryOutput struct{ *pulumi.OutputState } + +func (TransformerTypeConverterEntryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerTypeConverterEntry)(nil)).Elem() +} + +func (o TransformerTypeConverterEntryOutput) ToTransformerTypeConverterEntryOutput() TransformerTypeConverterEntryOutput { + return o +} + +func (o TransformerTypeConverterEntryOutput) ToTransformerTypeConverterEntryOutputWithContext(ctx context.Context) TransformerTypeConverterEntryOutput { + return o +} + +func (o TransformerTypeConverterEntryOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v TransformerTypeConverterEntry) string { return v.Key }).(pulumi.StringOutput) +} + +func (o TransformerTypeConverterEntryOutput) Type() TransformerTypeConverterEntryTypeOutput { + return o.ApplyT(func(v TransformerTypeConverterEntry) TransformerTypeConverterEntryType { return v.Type }).(TransformerTypeConverterEntryTypeOutput) +} + +type TransformerTypeConverterEntryArrayOutput struct{ *pulumi.OutputState } + +func (TransformerTypeConverterEntryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerTypeConverterEntry)(nil)).Elem() +} + +func (o TransformerTypeConverterEntryArrayOutput) ToTransformerTypeConverterEntryArrayOutput() TransformerTypeConverterEntryArrayOutput { + return o +} + +func (o TransformerTypeConverterEntryArrayOutput) ToTransformerTypeConverterEntryArrayOutputWithContext(ctx context.Context) TransformerTypeConverterEntryArrayOutput { + return o +} + +func (o TransformerTypeConverterEntryArrayOutput) Index(i pulumi.IntInput) TransformerTypeConverterEntryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerTypeConverterEntry { + return vs[0].([]TransformerTypeConverterEntry)[vs[1].(int)] + }).(TransformerTypeConverterEntryOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*DeliveryDestinationDestinationPolicyInput)(nil)).Elem(), DeliveryDestinationDestinationPolicyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeliveryDestinationDestinationPolicyArrayInput)(nil)).Elem(), DeliveryDestinationDestinationPolicyArray{}) @@ -722,6 +5115,66 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*MetricFilterMetricTransformationInput)(nil)).Elem(), MetricFilterMetricTransformationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MetricFilterMetricTransformationArrayInput)(nil)).Elem(), MetricFilterMetricTransformationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ResourceConfigPropertiesInput)(nil)).Elem(), ResourceConfigPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerAddKeyEntryInput)(nil)).Elem(), TransformerAddKeyEntryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerAddKeyEntryArrayInput)(nil)).Elem(), TransformerAddKeyEntryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerCopyValueEntryInput)(nil)).Elem(), TransformerCopyValueEntryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerCopyValueEntryArrayInput)(nil)).Elem(), TransformerCopyValueEntryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerMoveKeyEntryInput)(nil)).Elem(), TransformerMoveKeyEntryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerMoveKeyEntryArrayInput)(nil)).Elem(), TransformerMoveKeyEntryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseCloudfrontInput)(nil)).Elem(), TransformerParseCloudfrontArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseCloudfrontPtrInput)(nil)).Elem(), TransformerParseCloudfrontArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParsePostgresInput)(nil)).Elem(), TransformerParsePostgresArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParsePostgresPtrInput)(nil)).Elem(), TransformerParsePostgresArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseRoute53Input)(nil)).Elem(), TransformerParseRoute53Args{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseRoute53PtrInput)(nil)).Elem(), TransformerParseRoute53Args{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseVpcInput)(nil)).Elem(), TransformerParseVpcArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseVpcPtrInput)(nil)).Elem(), TransformerParseVpcArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseWafInput)(nil)).Elem(), TransformerParseWafArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerParseWafPtrInput)(nil)).Elem(), TransformerParseWafArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorInput)(nil)).Elem(), TransformerProcessorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorArrayInput)(nil)).Elem(), TransformerProcessorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorAddKeysPropertiesInput)(nil)).Elem(), TransformerProcessorAddKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorAddKeysPropertiesPtrInput)(nil)).Elem(), TransformerProcessorAddKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorCopyValuePropertiesInput)(nil)).Elem(), TransformerProcessorCopyValuePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorCopyValuePropertiesPtrInput)(nil)).Elem(), TransformerProcessorCopyValuePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorCsvPropertiesInput)(nil)).Elem(), TransformerProcessorCsvPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorCsvPropertiesPtrInput)(nil)).Elem(), TransformerProcessorCsvPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorDateTimeConverterPropertiesInput)(nil)).Elem(), TransformerProcessorDateTimeConverterPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorDateTimeConverterPropertiesPtrInput)(nil)).Elem(), TransformerProcessorDateTimeConverterPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorDeleteKeysPropertiesInput)(nil)).Elem(), TransformerProcessorDeleteKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorDeleteKeysPropertiesPtrInput)(nil)).Elem(), TransformerProcessorDeleteKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorGrokPropertiesInput)(nil)).Elem(), TransformerProcessorGrokPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorGrokPropertiesPtrInput)(nil)).Elem(), TransformerProcessorGrokPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorListToMapPropertiesInput)(nil)).Elem(), TransformerProcessorListToMapPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorListToMapPropertiesPtrInput)(nil)).Elem(), TransformerProcessorListToMapPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorLowerCaseStringPropertiesInput)(nil)).Elem(), TransformerProcessorLowerCaseStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorLowerCaseStringPropertiesPtrInput)(nil)).Elem(), TransformerProcessorLowerCaseStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorMoveKeysPropertiesInput)(nil)).Elem(), TransformerProcessorMoveKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorMoveKeysPropertiesPtrInput)(nil)).Elem(), TransformerProcessorMoveKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorParseJsonPropertiesInput)(nil)).Elem(), TransformerProcessorParseJsonPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorParseJsonPropertiesPtrInput)(nil)).Elem(), TransformerProcessorParseJsonPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorParseKeyValuePropertiesInput)(nil)).Elem(), TransformerProcessorParseKeyValuePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorParseKeyValuePropertiesPtrInput)(nil)).Elem(), TransformerProcessorParseKeyValuePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorRenameKeysPropertiesInput)(nil)).Elem(), TransformerProcessorRenameKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorRenameKeysPropertiesPtrInput)(nil)).Elem(), TransformerProcessorRenameKeysPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorSplitStringPropertiesInput)(nil)).Elem(), TransformerProcessorSplitStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorSplitStringPropertiesPtrInput)(nil)).Elem(), TransformerProcessorSplitStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorSubstituteStringPropertiesInput)(nil)).Elem(), TransformerProcessorSubstituteStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorSubstituteStringPropertiesPtrInput)(nil)).Elem(), TransformerProcessorSubstituteStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorTrimStringPropertiesInput)(nil)).Elem(), TransformerProcessorTrimStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorTrimStringPropertiesPtrInput)(nil)).Elem(), TransformerProcessorTrimStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorTypeConverterPropertiesInput)(nil)).Elem(), TransformerProcessorTypeConverterPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorTypeConverterPropertiesPtrInput)(nil)).Elem(), TransformerProcessorTypeConverterPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorUpperCaseStringPropertiesInput)(nil)).Elem(), TransformerProcessorUpperCaseStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerProcessorUpperCaseStringPropertiesPtrInput)(nil)).Elem(), TransformerProcessorUpperCaseStringPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerRenameKeyEntryInput)(nil)).Elem(), TransformerRenameKeyEntryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerRenameKeyEntryArrayInput)(nil)).Elem(), TransformerRenameKeyEntryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerSplitStringEntryInput)(nil)).Elem(), TransformerSplitStringEntryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerSplitStringEntryArrayInput)(nil)).Elem(), TransformerSplitStringEntryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerSubstituteStringEntryInput)(nil)).Elem(), TransformerSubstituteStringEntryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerSubstituteStringEntryArrayInput)(nil)).Elem(), TransformerSubstituteStringEntryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerTypeConverterEntryInput)(nil)).Elem(), TransformerTypeConverterEntryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerTypeConverterEntryArrayInput)(nil)).Elem(), TransformerTypeConverterEntryArray{}) pulumi.RegisterOutputType(DeliveryDestinationDestinationPolicyOutput{}) pulumi.RegisterOutputType(DeliveryDestinationDestinationPolicyArrayOutput{}) pulumi.RegisterOutputType(IntegrationOpenSearchResourceConfigOutput{}) @@ -731,4 +5184,64 @@ func init() { pulumi.RegisterOutputType(MetricFilterMetricTransformationOutput{}) pulumi.RegisterOutputType(MetricFilterMetricTransformationArrayOutput{}) pulumi.RegisterOutputType(ResourceConfigPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerAddKeyEntryOutput{}) + pulumi.RegisterOutputType(TransformerAddKeyEntryArrayOutput{}) + pulumi.RegisterOutputType(TransformerCopyValueEntryOutput{}) + pulumi.RegisterOutputType(TransformerCopyValueEntryArrayOutput{}) + pulumi.RegisterOutputType(TransformerMoveKeyEntryOutput{}) + pulumi.RegisterOutputType(TransformerMoveKeyEntryArrayOutput{}) + pulumi.RegisterOutputType(TransformerParseCloudfrontOutput{}) + pulumi.RegisterOutputType(TransformerParseCloudfrontPtrOutput{}) + pulumi.RegisterOutputType(TransformerParsePostgresOutput{}) + pulumi.RegisterOutputType(TransformerParsePostgresPtrOutput{}) + pulumi.RegisterOutputType(TransformerParseRoute53Output{}) + pulumi.RegisterOutputType(TransformerParseRoute53PtrOutput{}) + pulumi.RegisterOutputType(TransformerParseVpcOutput{}) + pulumi.RegisterOutputType(TransformerParseVpcPtrOutput{}) + pulumi.RegisterOutputType(TransformerParseWafOutput{}) + pulumi.RegisterOutputType(TransformerParseWafPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorOutput{}) + pulumi.RegisterOutputType(TransformerProcessorArrayOutput{}) + pulumi.RegisterOutputType(TransformerProcessorAddKeysPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorAddKeysPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorCopyValuePropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorCopyValuePropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorCsvPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorCsvPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorDateTimeConverterPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorDateTimeConverterPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorDeleteKeysPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorDeleteKeysPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorGrokPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorGrokPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorListToMapPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorListToMapPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorLowerCaseStringPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorLowerCaseStringPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorMoveKeysPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorMoveKeysPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorParseJsonPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorParseJsonPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorParseKeyValuePropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorParseKeyValuePropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorRenameKeysPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorRenameKeysPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorSplitStringPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorSplitStringPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorSubstituteStringPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorSubstituteStringPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorTrimStringPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorTrimStringPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorTypeConverterPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorTypeConverterPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerProcessorUpperCaseStringPropertiesOutput{}) + pulumi.RegisterOutputType(TransformerProcessorUpperCaseStringPropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerRenameKeyEntryOutput{}) + pulumi.RegisterOutputType(TransformerRenameKeyEntryArrayOutput{}) + pulumi.RegisterOutputType(TransformerSplitStringEntryOutput{}) + pulumi.RegisterOutputType(TransformerSplitStringEntryArrayOutput{}) + pulumi.RegisterOutputType(TransformerSubstituteStringEntryOutput{}) + pulumi.RegisterOutputType(TransformerSubstituteStringEntryArrayOutput{}) + pulumi.RegisterOutputType(TransformerTypeConverterEntryOutput{}) + pulumi.RegisterOutputType(TransformerTypeConverterEntryArrayOutput{}) } diff --git a/sdk/go/aws/logs/queryDefinition.go b/sdk/go/aws/logs/queryDefinition.go index e3ed5a5bad..04ecf564d3 100644 --- a/sdk/go/aws/logs/queryDefinition.go +++ b/sdk/go/aws/logs/queryDefinition.go @@ -22,6 +22,8 @@ type QueryDefinition struct { Name pulumi.StringOutput `pulumi:"name"` // Unique identifier of a query definition QueryDefinitionId pulumi.StringOutput `pulumi:"queryDefinitionId"` + // Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + QueryLanguage QueryDefinitionQueryLanguagePtrOutput `pulumi:"queryLanguage"` // The query string to use for this definition QueryString pulumi.StringOutput `pulumi:"queryString"` } @@ -73,6 +75,8 @@ type queryDefinitionArgs struct { LogGroupNames []string `pulumi:"logGroupNames"` // A name for the saved query definition Name *string `pulumi:"name"` + // Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + QueryLanguage *QueryDefinitionQueryLanguage `pulumi:"queryLanguage"` // The query string to use for this definition QueryString string `pulumi:"queryString"` } @@ -83,6 +87,8 @@ type QueryDefinitionArgs struct { LogGroupNames pulumi.StringArrayInput // A name for the saved query definition Name pulumi.StringPtrInput + // Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + QueryLanguage QueryDefinitionQueryLanguagePtrInput // The query string to use for this definition QueryString pulumi.StringInput } @@ -139,6 +145,11 @@ func (o QueryDefinitionOutput) QueryDefinitionId() pulumi.StringOutput { return o.ApplyT(func(v *QueryDefinition) pulumi.StringOutput { return v.QueryDefinitionId }).(pulumi.StringOutput) } +// Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. +func (o QueryDefinitionOutput) QueryLanguage() QueryDefinitionQueryLanguagePtrOutput { + return o.ApplyT(func(v *QueryDefinition) QueryDefinitionQueryLanguagePtrOutput { return v.QueryLanguage }).(QueryDefinitionQueryLanguagePtrOutput) +} + // The query string to use for this definition func (o QueryDefinitionOutput) QueryString() pulumi.StringOutput { return o.ApplyT(func(v *QueryDefinition) pulumi.StringOutput { return v.QueryString }).(pulumi.StringOutput) diff --git a/sdk/go/aws/logs/subscriptionFilter.go b/sdk/go/aws/logs/subscriptionFilter.go index 85e15b1f68..bccc2a37a9 100644 --- a/sdk/go/aws/logs/subscriptionFilter.go +++ b/sdk/go/aws/logs/subscriptionFilter.go @@ -26,6 +26,10 @@ import ( type SubscriptionFilter struct { pulumi.CustomResourceState + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs pulumi.BoolPtrOutput `pulumi:"applyOnTransformedLogs"` // The Amazon Resource Name (ARN) of the destination. DestinationArn pulumi.StringOutput `pulumi:"destinationArn"` // The method used to distribute log data to the destination, which can be either random or grouped by log stream. @@ -94,6 +98,10 @@ func (SubscriptionFilterState) ElementType() reflect.Type { } type subscriptionFilterArgs struct { + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs *bool `pulumi:"applyOnTransformedLogs"` // The Amazon Resource Name (ARN) of the destination. DestinationArn string `pulumi:"destinationArn"` // The method used to distribute log data to the destination, which can be either random or grouped by log stream. @@ -110,6 +118,10 @@ type subscriptionFilterArgs struct { // The set of arguments for constructing a SubscriptionFilter resource. type SubscriptionFilterArgs struct { + // This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + // + // If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + ApplyOnTransformedLogs pulumi.BoolPtrInput // The Amazon Resource Name (ARN) of the destination. DestinationArn pulumi.StringInput // The method used to distribute log data to the destination, which can be either random or grouped by log stream. @@ -161,6 +173,13 @@ func (o SubscriptionFilterOutput) ToSubscriptionFilterOutputWithContext(ctx cont return o } +// This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . +// +// If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. +func (o SubscriptionFilterOutput) ApplyOnTransformedLogs() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *SubscriptionFilter) pulumi.BoolPtrOutput { return v.ApplyOnTransformedLogs }).(pulumi.BoolPtrOutput) +} + // The Amazon Resource Name (ARN) of the destination. func (o SubscriptionFilterOutput) DestinationArn() pulumi.StringOutput { return o.ApplyT(func(v *SubscriptionFilter) pulumi.StringOutput { return v.DestinationArn }).(pulumi.StringOutput) diff --git a/sdk/go/aws/logs/transformer.go b/sdk/go/aws/logs/transformer.go new file mode 100644 index 0000000000..4b6470628f --- /dev/null +++ b/sdk/go/aws/logs/transformer.go @@ -0,0 +1,139 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package logs + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Specifies a transformer on the log group to transform logs into consistent structured and information rich format. +type Transformer struct { + pulumi.CustomResourceState + + // Existing log group that you want to associate with this transformer. + LogGroupIdentifier pulumi.StringOutput `pulumi:"logGroupIdentifier"` + // List of processors in a transformer + TransformerConfig TransformerProcessorArrayOutput `pulumi:"transformerConfig"` +} + +// NewTransformer registers a new resource with the given unique name, arguments, and options. +func NewTransformer(ctx *pulumi.Context, + name string, args *TransformerArgs, opts ...pulumi.ResourceOption) (*Transformer, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.LogGroupIdentifier == nil { + return nil, errors.New("invalid value for required argument 'LogGroupIdentifier'") + } + if args.TransformerConfig == nil { + return nil, errors.New("invalid value for required argument 'TransformerConfig'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "logGroupIdentifier", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Transformer + err := ctx.RegisterResource("aws-native:logs:Transformer", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetTransformer gets an existing Transformer resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetTransformer(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *TransformerState, opts ...pulumi.ResourceOption) (*Transformer, error) { + var resource Transformer + err := ctx.ReadResource("aws-native:logs:Transformer", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Transformer resources. +type transformerState struct { +} + +type TransformerState struct { +} + +func (TransformerState) ElementType() reflect.Type { + return reflect.TypeOf((*transformerState)(nil)).Elem() +} + +type transformerArgs struct { + // Existing log group that you want to associate with this transformer. + LogGroupIdentifier string `pulumi:"logGroupIdentifier"` + // List of processors in a transformer + TransformerConfig []TransformerProcessor `pulumi:"transformerConfig"` +} + +// The set of arguments for constructing a Transformer resource. +type TransformerArgs struct { + // Existing log group that you want to associate with this transformer. + LogGroupIdentifier pulumi.StringInput + // List of processors in a transformer + TransformerConfig TransformerProcessorArrayInput +} + +func (TransformerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*transformerArgs)(nil)).Elem() +} + +type TransformerInput interface { + pulumi.Input + + ToTransformerOutput() TransformerOutput + ToTransformerOutputWithContext(ctx context.Context) TransformerOutput +} + +func (*Transformer) ElementType() reflect.Type { + return reflect.TypeOf((**Transformer)(nil)).Elem() +} + +func (i *Transformer) ToTransformerOutput() TransformerOutput { + return i.ToTransformerOutputWithContext(context.Background()) +} + +func (i *Transformer) ToTransformerOutputWithContext(ctx context.Context) TransformerOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerOutput) +} + +type TransformerOutput struct{ *pulumi.OutputState } + +func (TransformerOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Transformer)(nil)).Elem() +} + +func (o TransformerOutput) ToTransformerOutput() TransformerOutput { + return o +} + +func (o TransformerOutput) ToTransformerOutputWithContext(ctx context.Context) TransformerOutput { + return o +} + +// Existing log group that you want to associate with this transformer. +func (o TransformerOutput) LogGroupIdentifier() pulumi.StringOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringOutput { return v.LogGroupIdentifier }).(pulumi.StringOutput) +} + +// List of processors in a transformer +func (o TransformerOutput) TransformerConfig() TransformerProcessorArrayOutput { + return o.ApplyT(func(v *Transformer) TransformerProcessorArrayOutput { return v.TransformerConfig }).(TransformerProcessorArrayOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*TransformerInput)(nil)).Elem(), &Transformer{}) + pulumi.RegisterOutputType(TransformerOutput{}) +} diff --git a/sdk/go/aws/m2/environment.go b/sdk/go/aws/m2/environment.go index 8daf72d43b..f56b97abb2 100644 --- a/sdk/go/aws/m2/environment.go +++ b/sdk/go/aws/m2/environment.go @@ -33,7 +33,8 @@ type Environment struct { // The ID or the Amazon Resource Name (ARN) of the customer managed KMS Key used for encrypting environment-related resources. KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"` // The name of the environment. - Name pulumi.StringOutput `pulumi:"name"` + Name pulumi.StringOutput `pulumi:"name"` + NetworkType EnvironmentNetworkTypePtrOutput `pulumi:"networkType"` // Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow pulumi.StringPtrOutput `pulumi:"preferredMaintenanceWindow"` // Specifies whether the environment is publicly accessible. @@ -66,6 +67,7 @@ func NewEnvironment(ctx *pulumi.Context, "engineType", "kmsKeyId", "name", + "networkType", "publiclyAccessible", "securityGroupIds[*]", "storageConfigurations[*]", @@ -118,7 +120,8 @@ type environmentArgs struct { // The ID or the Amazon Resource Name (ARN) of the customer managed KMS Key used for encrypting environment-related resources. KmsKeyId *string `pulumi:"kmsKeyId"` // The name of the environment. - Name *string `pulumi:"name"` + Name *string `pulumi:"name"` + NetworkType *EnvironmentNetworkType `pulumi:"networkType"` // Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow *string `pulumi:"preferredMaintenanceWindow"` // Specifies whether the environment is publicly accessible. @@ -148,7 +151,8 @@ type EnvironmentArgs struct { // The ID or the Amazon Resource Name (ARN) of the customer managed KMS Key used for encrypting environment-related resources. KmsKeyId pulumi.StringPtrInput // The name of the environment. - Name pulumi.StringPtrInput + Name pulumi.StringPtrInput + NetworkType EnvironmentNetworkTypePtrInput // Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow pulumi.StringPtrInput // Specifies whether the environment is publicly accessible. @@ -245,6 +249,10 @@ func (o EnvironmentOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Environment) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } +func (o EnvironmentOutput) NetworkType() EnvironmentNetworkTypePtrOutput { + return o.ApplyT(func(v *Environment) EnvironmentNetworkTypePtrOutput { return v.NetworkType }).(EnvironmentNetworkTypePtrOutput) +} + // Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. func (o EnvironmentOutput) PreferredMaintenanceWindow() pulumi.StringPtrOutput { return o.ApplyT(func(v *Environment) pulumi.StringPtrOutput { return v.PreferredMaintenanceWindow }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/m2/pulumiEnums.go b/sdk/go/aws/m2/pulumiEnums.go index 782797d0c1..a6adb3e4a9 100644 --- a/sdk/go/aws/m2/pulumiEnums.go +++ b/sdk/go/aws/m2/pulumiEnums.go @@ -341,13 +341,182 @@ func (in *environmentEngineTypePtr) ToEnvironmentEngineTypePtrOutputWithContext( return pulumi.ToOutputWithContext(ctx, in).(EnvironmentEngineTypePtrOutput) } +type EnvironmentNetworkType string + +const ( + EnvironmentNetworkTypeIpv4 = EnvironmentNetworkType("ipv4") + EnvironmentNetworkTypeDual = EnvironmentNetworkType("dual") +) + +func (EnvironmentNetworkType) ElementType() reflect.Type { + return reflect.TypeOf((*EnvironmentNetworkType)(nil)).Elem() +} + +func (e EnvironmentNetworkType) ToEnvironmentNetworkTypeOutput() EnvironmentNetworkTypeOutput { + return pulumi.ToOutput(e).(EnvironmentNetworkTypeOutput) +} + +func (e EnvironmentNetworkType) ToEnvironmentNetworkTypeOutputWithContext(ctx context.Context) EnvironmentNetworkTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(EnvironmentNetworkTypeOutput) +} + +func (e EnvironmentNetworkType) ToEnvironmentNetworkTypePtrOutput() EnvironmentNetworkTypePtrOutput { + return e.ToEnvironmentNetworkTypePtrOutputWithContext(context.Background()) +} + +func (e EnvironmentNetworkType) ToEnvironmentNetworkTypePtrOutputWithContext(ctx context.Context) EnvironmentNetworkTypePtrOutput { + return EnvironmentNetworkType(e).ToEnvironmentNetworkTypeOutputWithContext(ctx).ToEnvironmentNetworkTypePtrOutputWithContext(ctx) +} + +func (e EnvironmentNetworkType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e EnvironmentNetworkType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e EnvironmentNetworkType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e EnvironmentNetworkType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type EnvironmentNetworkTypeOutput struct{ *pulumi.OutputState } + +func (EnvironmentNetworkTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*EnvironmentNetworkType)(nil)).Elem() +} + +func (o EnvironmentNetworkTypeOutput) ToEnvironmentNetworkTypeOutput() EnvironmentNetworkTypeOutput { + return o +} + +func (o EnvironmentNetworkTypeOutput) ToEnvironmentNetworkTypeOutputWithContext(ctx context.Context) EnvironmentNetworkTypeOutput { + return o +} + +func (o EnvironmentNetworkTypeOutput) ToEnvironmentNetworkTypePtrOutput() EnvironmentNetworkTypePtrOutput { + return o.ToEnvironmentNetworkTypePtrOutputWithContext(context.Background()) +} + +func (o EnvironmentNetworkTypeOutput) ToEnvironmentNetworkTypePtrOutputWithContext(ctx context.Context) EnvironmentNetworkTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v EnvironmentNetworkType) *EnvironmentNetworkType { + return &v + }).(EnvironmentNetworkTypePtrOutput) +} + +func (o EnvironmentNetworkTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o EnvironmentNetworkTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e EnvironmentNetworkType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o EnvironmentNetworkTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o EnvironmentNetworkTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e EnvironmentNetworkType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type EnvironmentNetworkTypePtrOutput struct{ *pulumi.OutputState } + +func (EnvironmentNetworkTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**EnvironmentNetworkType)(nil)).Elem() +} + +func (o EnvironmentNetworkTypePtrOutput) ToEnvironmentNetworkTypePtrOutput() EnvironmentNetworkTypePtrOutput { + return o +} + +func (o EnvironmentNetworkTypePtrOutput) ToEnvironmentNetworkTypePtrOutputWithContext(ctx context.Context) EnvironmentNetworkTypePtrOutput { + return o +} + +func (o EnvironmentNetworkTypePtrOutput) Elem() EnvironmentNetworkTypeOutput { + return o.ApplyT(func(v *EnvironmentNetworkType) EnvironmentNetworkType { + if v != nil { + return *v + } + var ret EnvironmentNetworkType + return ret + }).(EnvironmentNetworkTypeOutput) +} + +func (o EnvironmentNetworkTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o EnvironmentNetworkTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *EnvironmentNetworkType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// EnvironmentNetworkTypeInput is an input type that accepts values of the EnvironmentNetworkType enum +// A concrete instance of `EnvironmentNetworkTypeInput` can be one of the following: +// +// EnvironmentNetworkTypeIpv4 +// EnvironmentNetworkTypeDual +type EnvironmentNetworkTypeInput interface { + pulumi.Input + + ToEnvironmentNetworkTypeOutput() EnvironmentNetworkTypeOutput + ToEnvironmentNetworkTypeOutputWithContext(context.Context) EnvironmentNetworkTypeOutput +} + +var environmentNetworkTypePtrType = reflect.TypeOf((**EnvironmentNetworkType)(nil)).Elem() + +type EnvironmentNetworkTypePtrInput interface { + pulumi.Input + + ToEnvironmentNetworkTypePtrOutput() EnvironmentNetworkTypePtrOutput + ToEnvironmentNetworkTypePtrOutputWithContext(context.Context) EnvironmentNetworkTypePtrOutput +} + +type environmentNetworkTypePtr string + +func EnvironmentNetworkTypePtr(v string) EnvironmentNetworkTypePtrInput { + return (*environmentNetworkTypePtr)(&v) +} + +func (*environmentNetworkTypePtr) ElementType() reflect.Type { + return environmentNetworkTypePtrType +} + +func (in *environmentNetworkTypePtr) ToEnvironmentNetworkTypePtrOutput() EnvironmentNetworkTypePtrOutput { + return pulumi.ToOutput(in).(EnvironmentNetworkTypePtrOutput) +} + +func (in *environmentNetworkTypePtr) ToEnvironmentNetworkTypePtrOutputWithContext(ctx context.Context) EnvironmentNetworkTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(EnvironmentNetworkTypePtrOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*ApplicationEngineTypeInput)(nil)).Elem(), ApplicationEngineType("microfocus")) pulumi.RegisterInputType(reflect.TypeOf((*ApplicationEngineTypePtrInput)(nil)).Elem(), ApplicationEngineType("microfocus")) pulumi.RegisterInputType(reflect.TypeOf((*EnvironmentEngineTypeInput)(nil)).Elem(), EnvironmentEngineType("microfocus")) pulumi.RegisterInputType(reflect.TypeOf((*EnvironmentEngineTypePtrInput)(nil)).Elem(), EnvironmentEngineType("microfocus")) + pulumi.RegisterInputType(reflect.TypeOf((*EnvironmentNetworkTypeInput)(nil)).Elem(), EnvironmentNetworkType("ipv4")) + pulumi.RegisterInputType(reflect.TypeOf((*EnvironmentNetworkTypePtrInput)(nil)).Elem(), EnvironmentNetworkType("ipv4")) pulumi.RegisterOutputType(ApplicationEngineTypeOutput{}) pulumi.RegisterOutputType(ApplicationEngineTypePtrOutput{}) pulumi.RegisterOutputType(EnvironmentEngineTypeOutput{}) pulumi.RegisterOutputType(EnvironmentEngineTypePtrOutput{}) + pulumi.RegisterOutputType(EnvironmentNetworkTypeOutput{}) + pulumi.RegisterOutputType(EnvironmentNetworkTypePtrOutput{}) } diff --git a/sdk/go/aws/msk/replicator.go b/sdk/go/aws/msk/replicator.go index 37e8ddf7f4..405c6b43da 100644 --- a/sdk/go/aws/msk/replicator.go +++ b/sdk/go/aws/msk/replicator.go @@ -54,6 +54,11 @@ func NewReplicator(ctx *pulumi.Context, replaceOnChanges := pulumi.ReplaceOnChanges([]string{ "description", "kafkaClusters[*]", + "replicationInfoList[*].sourceKafkaClusterArn", + "replicationInfoList[*].targetCompressionType", + "replicationInfoList[*].targetKafkaClusterArn", + "replicationInfoList[*].topicReplication.startingPosition", + "replicationInfoList[*].topicReplication.topicNameConfiguration", "replicatorName", "serviceExecutionRoleArn", }) diff --git a/sdk/go/aws/networkmanager/directConnectGatewayAttachment.go b/sdk/go/aws/networkmanager/directConnectGatewayAttachment.go new file mode 100644 index 0000000000..19bf31fc54 --- /dev/null +++ b/sdk/go/aws/networkmanager/directConnectGatewayAttachment.go @@ -0,0 +1,269 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package networkmanager + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type +type DirectConnectGatewayAttachment struct { + pulumi.CustomResourceState + + // Id of the attachment. + AttachmentId pulumi.StringOutput `pulumi:"attachmentId"` + // The policy rule number associated with the attachment. + AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"` + // Attachment type. + AttachmentType pulumi.StringOutput `pulumi:"attachmentType"` + // The ARN of a core network for the Direct Connect Gateway attachment. + CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"` + // The ID of a core network for the Direct Connect Gateway attachment. + CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"` + // Creation time of the attachment. + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + // The ARN of the Direct Connect Gateway. + DirectConnectGatewayArn pulumi.StringOutput `pulumi:"directConnectGatewayArn"` + // The Regions where the edges are located. + EdgeLocations pulumi.StringArrayOutput `pulumi:"edgeLocations"` + // The name of the network function group attachment. + NetworkFunctionGroupName pulumi.StringOutput `pulumi:"networkFunctionGroupName"` + // Owner account of the attachment. + OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"` + // The attachment to move from one network function group to another. + ProposedNetworkFunctionGroupChange DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput `pulumi:"proposedNetworkFunctionGroupChange"` + // The attachment to move from one segment to another. + ProposedSegmentChange DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput `pulumi:"proposedSegmentChange"` + // The ARN of the Resource. + ResourceArn pulumi.StringOutput `pulumi:"resourceArn"` + // The name of the segment attachment.. + SegmentName pulumi.StringOutput `pulumi:"segmentName"` + // State of the attachment. + State pulumi.StringOutput `pulumi:"state"` + // Tags for the attachment. + Tags aws.TagArrayOutput `pulumi:"tags"` + // Last update time of the attachment. + UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` +} + +// NewDirectConnectGatewayAttachment registers a new resource with the given unique name, arguments, and options. +func NewDirectConnectGatewayAttachment(ctx *pulumi.Context, + name string, args *DirectConnectGatewayAttachmentArgs, opts ...pulumi.ResourceOption) (*DirectConnectGatewayAttachment, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.CoreNetworkId == nil { + return nil, errors.New("invalid value for required argument 'CoreNetworkId'") + } + if args.DirectConnectGatewayArn == nil { + return nil, errors.New("invalid value for required argument 'DirectConnectGatewayArn'") + } + if args.EdgeLocations == nil { + return nil, errors.New("invalid value for required argument 'EdgeLocations'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "coreNetworkId", + "directConnectGatewayArn", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource DirectConnectGatewayAttachment + err := ctx.RegisterResource("aws-native:networkmanager:DirectConnectGatewayAttachment", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDirectConnectGatewayAttachment gets an existing DirectConnectGatewayAttachment resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetDirectConnectGatewayAttachment(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DirectConnectGatewayAttachmentState, opts ...pulumi.ResourceOption) (*DirectConnectGatewayAttachment, error) { + var resource DirectConnectGatewayAttachment + err := ctx.ReadResource("aws-native:networkmanager:DirectConnectGatewayAttachment", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DirectConnectGatewayAttachment resources. +type directConnectGatewayAttachmentState struct { +} + +type DirectConnectGatewayAttachmentState struct { +} + +func (DirectConnectGatewayAttachmentState) ElementType() reflect.Type { + return reflect.TypeOf((*directConnectGatewayAttachmentState)(nil)).Elem() +} + +type directConnectGatewayAttachmentArgs struct { + // The ID of a core network for the Direct Connect Gateway attachment. + CoreNetworkId string `pulumi:"coreNetworkId"` + // The ARN of the Direct Connect Gateway. + DirectConnectGatewayArn string `pulumi:"directConnectGatewayArn"` + // The Regions where the edges are located. + EdgeLocations []string `pulumi:"edgeLocations"` + // The attachment to move from one network function group to another. + ProposedNetworkFunctionGroupChange *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange `pulumi:"proposedNetworkFunctionGroupChange"` + // The attachment to move from one segment to another. + ProposedSegmentChange *DirectConnectGatewayAttachmentProposedSegmentChange `pulumi:"proposedSegmentChange"` + // Tags for the attachment. + Tags []aws.Tag `pulumi:"tags"` +} + +// The set of arguments for constructing a DirectConnectGatewayAttachment resource. +type DirectConnectGatewayAttachmentArgs struct { + // The ID of a core network for the Direct Connect Gateway attachment. + CoreNetworkId pulumi.StringInput + // The ARN of the Direct Connect Gateway. + DirectConnectGatewayArn pulumi.StringInput + // The Regions where the edges are located. + EdgeLocations pulumi.StringArrayInput + // The attachment to move from one network function group to another. + ProposedNetworkFunctionGroupChange DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrInput + // The attachment to move from one segment to another. + ProposedSegmentChange DirectConnectGatewayAttachmentProposedSegmentChangePtrInput + // Tags for the attachment. + Tags aws.TagArrayInput +} + +func (DirectConnectGatewayAttachmentArgs) ElementType() reflect.Type { + return reflect.TypeOf((*directConnectGatewayAttachmentArgs)(nil)).Elem() +} + +type DirectConnectGatewayAttachmentInput interface { + pulumi.Input + + ToDirectConnectGatewayAttachmentOutput() DirectConnectGatewayAttachmentOutput + ToDirectConnectGatewayAttachmentOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentOutput +} + +func (*DirectConnectGatewayAttachment) ElementType() reflect.Type { + return reflect.TypeOf((**DirectConnectGatewayAttachment)(nil)).Elem() +} + +func (i *DirectConnectGatewayAttachment) ToDirectConnectGatewayAttachmentOutput() DirectConnectGatewayAttachmentOutput { + return i.ToDirectConnectGatewayAttachmentOutputWithContext(context.Background()) +} + +func (i *DirectConnectGatewayAttachment) ToDirectConnectGatewayAttachmentOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentOutput) +} + +type DirectConnectGatewayAttachmentOutput struct{ *pulumi.OutputState } + +func (DirectConnectGatewayAttachmentOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectConnectGatewayAttachment)(nil)).Elem() +} + +func (o DirectConnectGatewayAttachmentOutput) ToDirectConnectGatewayAttachmentOutput() DirectConnectGatewayAttachmentOutput { + return o +} + +func (o DirectConnectGatewayAttachmentOutput) ToDirectConnectGatewayAttachmentOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentOutput { + return o +} + +// Id of the attachment. +func (o DirectConnectGatewayAttachmentOutput) AttachmentId() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.AttachmentId }).(pulumi.StringOutput) +} + +// The policy rule number associated with the attachment. +func (o DirectConnectGatewayAttachmentOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.IntOutput { return v.AttachmentPolicyRuleNumber }).(pulumi.IntOutput) +} + +// Attachment type. +func (o DirectConnectGatewayAttachmentOutput) AttachmentType() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.AttachmentType }).(pulumi.StringOutput) +} + +// The ARN of a core network for the Direct Connect Gateway attachment. +func (o DirectConnectGatewayAttachmentOutput) CoreNetworkArn() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.CoreNetworkArn }).(pulumi.StringOutput) +} + +// The ID of a core network for the Direct Connect Gateway attachment. +func (o DirectConnectGatewayAttachmentOutput) CoreNetworkId() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.CoreNetworkId }).(pulumi.StringOutput) +} + +// Creation time of the attachment. +func (o DirectConnectGatewayAttachmentOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +// The ARN of the Direct Connect Gateway. +func (o DirectConnectGatewayAttachmentOutput) DirectConnectGatewayArn() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.DirectConnectGatewayArn }).(pulumi.StringOutput) +} + +// The Regions where the edges are located. +func (o DirectConnectGatewayAttachmentOutput) EdgeLocations() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringArrayOutput { return v.EdgeLocations }).(pulumi.StringArrayOutput) +} + +// The name of the network function group attachment. +func (o DirectConnectGatewayAttachmentOutput) NetworkFunctionGroupName() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.NetworkFunctionGroupName }).(pulumi.StringOutput) +} + +// Owner account of the attachment. +func (o DirectConnectGatewayAttachmentOutput) OwnerAccountId() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.OwnerAccountId }).(pulumi.StringOutput) +} + +// The attachment to move from one network function group to another. +func (o DirectConnectGatewayAttachmentOutput) ProposedNetworkFunctionGroupChange() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return v.ProposedNetworkFunctionGroupChange + }).(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) +} + +// The attachment to move from one segment to another. +func (o DirectConnectGatewayAttachmentOutput) ProposedSegmentChange() DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return v.ProposedSegmentChange + }).(DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) +} + +// The ARN of the Resource. +func (o DirectConnectGatewayAttachmentOutput) ResourceArn() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.ResourceArn }).(pulumi.StringOutput) +} + +// The name of the segment attachment.. +func (o DirectConnectGatewayAttachmentOutput) SegmentName() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.SegmentName }).(pulumi.StringOutput) +} + +// State of the attachment. +func (o DirectConnectGatewayAttachmentOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.State }).(pulumi.StringOutput) +} + +// Tags for the attachment. +func (o DirectConnectGatewayAttachmentOutput) Tags() aws.TagArrayOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) +} + +// Last update time of the attachment. +func (o DirectConnectGatewayAttachmentOutput) UpdatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachment) pulumi.StringOutput { return v.UpdatedAt }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DirectConnectGatewayAttachmentInput)(nil)).Elem(), &DirectConnectGatewayAttachment{}) + pulumi.RegisterOutputType(DirectConnectGatewayAttachmentOutput{}) +} diff --git a/sdk/go/aws/networkmanager/getDirectConnectGatewayAttachment.go b/sdk/go/aws/networkmanager/getDirectConnectGatewayAttachment.go new file mode 100644 index 0000000000..155431fd6c --- /dev/null +++ b/sdk/go/aws/networkmanager/getDirectConnectGatewayAttachment.go @@ -0,0 +1,177 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package networkmanager + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type +func LookupDirectConnectGatewayAttachment(ctx *pulumi.Context, args *LookupDirectConnectGatewayAttachmentArgs, opts ...pulumi.InvokeOption) (*LookupDirectConnectGatewayAttachmentResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupDirectConnectGatewayAttachmentResult + err := ctx.Invoke("aws-native:networkmanager:getDirectConnectGatewayAttachment", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupDirectConnectGatewayAttachmentArgs struct { + // Id of the attachment. + AttachmentId string `pulumi:"attachmentId"` +} + +type LookupDirectConnectGatewayAttachmentResult struct { + // Id of the attachment. + AttachmentId *string `pulumi:"attachmentId"` + // The policy rule number associated with the attachment. + AttachmentPolicyRuleNumber *int `pulumi:"attachmentPolicyRuleNumber"` + // Attachment type. + AttachmentType *string `pulumi:"attachmentType"` + // The ARN of a core network for the Direct Connect Gateway attachment. + CoreNetworkArn *string `pulumi:"coreNetworkArn"` + // Creation time of the attachment. + CreatedAt *string `pulumi:"createdAt"` + // The Regions where the edges are located. + EdgeLocations []string `pulumi:"edgeLocations"` + // The name of the network function group attachment. + NetworkFunctionGroupName *string `pulumi:"networkFunctionGroupName"` + // Owner account of the attachment. + OwnerAccountId *string `pulumi:"ownerAccountId"` + // The attachment to move from one network function group to another. + ProposedNetworkFunctionGroupChange *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange `pulumi:"proposedNetworkFunctionGroupChange"` + // The attachment to move from one segment to another. + ProposedSegmentChange *DirectConnectGatewayAttachmentProposedSegmentChange `pulumi:"proposedSegmentChange"` + // The ARN of the Resource. + ResourceArn *string `pulumi:"resourceArn"` + // The name of the segment attachment.. + SegmentName *string `pulumi:"segmentName"` + // State of the attachment. + State *string `pulumi:"state"` + // Tags for the attachment. + Tags []aws.Tag `pulumi:"tags"` + // Last update time of the attachment. + UpdatedAt *string `pulumi:"updatedAt"` +} + +func LookupDirectConnectGatewayAttachmentOutput(ctx *pulumi.Context, args LookupDirectConnectGatewayAttachmentOutputArgs, opts ...pulumi.InvokeOption) LookupDirectConnectGatewayAttachmentResultOutput { + return pulumi.ToOutputWithContext(ctx.Context(), args). + ApplyT(func(v interface{}) (LookupDirectConnectGatewayAttachmentResultOutput, error) { + args := v.(LookupDirectConnectGatewayAttachmentArgs) + options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)} + return ctx.InvokeOutput("aws-native:networkmanager:getDirectConnectGatewayAttachment", args, LookupDirectConnectGatewayAttachmentResultOutput{}, options).(LookupDirectConnectGatewayAttachmentResultOutput), nil + }).(LookupDirectConnectGatewayAttachmentResultOutput) +} + +type LookupDirectConnectGatewayAttachmentOutputArgs struct { + // Id of the attachment. + AttachmentId pulumi.StringInput `pulumi:"attachmentId"` +} + +func (LookupDirectConnectGatewayAttachmentOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDirectConnectGatewayAttachmentArgs)(nil)).Elem() +} + +type LookupDirectConnectGatewayAttachmentResultOutput struct{ *pulumi.OutputState } + +func (LookupDirectConnectGatewayAttachmentResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDirectConnectGatewayAttachmentResult)(nil)).Elem() +} + +func (o LookupDirectConnectGatewayAttachmentResultOutput) ToLookupDirectConnectGatewayAttachmentResultOutput() LookupDirectConnectGatewayAttachmentResultOutput { + return o +} + +func (o LookupDirectConnectGatewayAttachmentResultOutput) ToLookupDirectConnectGatewayAttachmentResultOutputWithContext(ctx context.Context) LookupDirectConnectGatewayAttachmentResultOutput { + return o +} + +// Id of the attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) AttachmentId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.AttachmentId }).(pulumi.StringPtrOutput) +} + +// The policy rule number associated with the attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) AttachmentPolicyRuleNumber() pulumi.IntPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *int { return v.AttachmentPolicyRuleNumber }).(pulumi.IntPtrOutput) +} + +// Attachment type. +func (o LookupDirectConnectGatewayAttachmentResultOutput) AttachmentType() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.AttachmentType }).(pulumi.StringPtrOutput) +} + +// The ARN of a core network for the Direct Connect Gateway attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) CoreNetworkArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.CoreNetworkArn }).(pulumi.StringPtrOutput) +} + +// Creation time of the attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) CreatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) +} + +// The Regions where the edges are located. +func (o LookupDirectConnectGatewayAttachmentResultOutput) EdgeLocations() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) []string { return v.EdgeLocations }).(pulumi.StringArrayOutput) +} + +// The name of the network function group attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) NetworkFunctionGroupName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.NetworkFunctionGroupName }).(pulumi.StringPtrOutput) +} + +// Owner account of the attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) OwnerAccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.OwnerAccountId }).(pulumi.StringPtrOutput) +} + +// The attachment to move from one network function group to another. +func (o LookupDirectConnectGatewayAttachmentResultOutput) ProposedNetworkFunctionGroupChange() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange { + return v.ProposedNetworkFunctionGroupChange + }).(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) +} + +// The attachment to move from one segment to another. +func (o LookupDirectConnectGatewayAttachmentResultOutput) ProposedSegmentChange() DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *DirectConnectGatewayAttachmentProposedSegmentChange { + return v.ProposedSegmentChange + }).(DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) +} + +// The ARN of the Resource. +func (o LookupDirectConnectGatewayAttachmentResultOutput) ResourceArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.ResourceArn }).(pulumi.StringPtrOutput) +} + +// The name of the segment attachment.. +func (o LookupDirectConnectGatewayAttachmentResultOutput) SegmentName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.SegmentName }).(pulumi.StringPtrOutput) +} + +// State of the attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) State() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.State }).(pulumi.StringPtrOutput) +} + +// Tags for the attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) Tags() aws.TagArrayOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) +} + +// Last update time of the attachment. +func (o LookupDirectConnectGatewayAttachmentResultOutput) UpdatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDirectConnectGatewayAttachmentResult) *string { return v.UpdatedAt }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupDirectConnectGatewayAttachmentResultOutput{}) +} diff --git a/sdk/go/aws/networkmanager/init.go b/sdk/go/aws/networkmanager/init.go index d409b3de7d..cb8fa33318 100644 --- a/sdk/go/aws/networkmanager/init.go +++ b/sdk/go/aws/networkmanager/init.go @@ -31,6 +31,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &CustomerGatewayAssociation{} case "aws-native:networkmanager:Device": r = &Device{} + case "aws-native:networkmanager:DirectConnectGatewayAttachment": + r = &DirectConnectGatewayAttachment{} case "aws-native:networkmanager:GlobalNetwork": r = &GlobalNetwork{} case "aws-native:networkmanager:Link": diff --git a/sdk/go/aws/networkmanager/pulumiTypes.go b/sdk/go/aws/networkmanager/pulumiTypes.go index a9708e1b89..f2616a1158 100644 --- a/sdk/go/aws/networkmanager/pulumiTypes.go +++ b/sdk/go/aws/networkmanager/pulumiTypes.go @@ -1474,6 +1474,479 @@ type DeviceTag struct { Value string `pulumi:"value"` } +// The attachment to move from one network function group to another. +type DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange struct { + // The rule number in the policy document that applies to this change. + AttachmentPolicyRuleNumber *int `pulumi:"attachmentPolicyRuleNumber"` + // The name of the network function group to change. + NetworkFunctionGroupName *string `pulumi:"networkFunctionGroupName"` + // The key-value tags that changed for the network function group. + Tags []DirectConnectGatewayAttachmentTag `pulumi:"tags"` +} + +// DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeInput is an input type that accepts DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs and DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput values. +// You can construct a concrete instance of `DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeInput` via: +// +// DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs{...} +type DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeInput interface { + pulumi.Input + + ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput + ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutputWithContext(context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput +} + +// The attachment to move from one network function group to another. +type DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs struct { + // The rule number in the policy document that applies to this change. + AttachmentPolicyRuleNumber pulumi.IntPtrInput `pulumi:"attachmentPolicyRuleNumber"` + // The name of the network function group to change. + NetworkFunctionGroupName pulumi.StringPtrInput `pulumi:"networkFunctionGroupName"` + // The key-value tags that changed for the network function group. + Tags DirectConnectGatewayAttachmentTagArrayInput `pulumi:"tags"` +} + +func (DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange)(nil)).Elem() +} + +func (i DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput { + return i.ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutputWithContext(context.Background()) +} + +func (i DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) +} + +func (i DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return i.ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(context.Background()) +} + +func (i DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput).ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(ctx) +} + +// DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrInput is an input type that accepts DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs, DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtr and DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput values. +// You can construct a concrete instance of `DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrInput` via: +// +// DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs{...} +// +// or: +// +// nil +type DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrInput interface { + pulumi.Input + + ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput + ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput +} + +type directConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrType DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs + +func DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtr(v *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrInput { + return (*directConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrType)(v) +} + +func (*directConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange)(nil)).Elem() +} + +func (i *directConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrType) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return i.ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(context.Background()) +} + +func (i *directConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrType) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) +} + +// The attachment to move from one network function group to another. +type DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput struct{ *pulumi.OutputState } + +func (DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange)(nil)).Elem() +} + +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return o.ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(context.Background()) +} + +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange { + return &v + }).(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) +} + +// The rule number in the policy document that applies to this change. +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) AttachmentPolicyRuleNumber() pulumi.IntPtrOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) *int { + return v.AttachmentPolicyRuleNumber + }).(pulumi.IntPtrOutput) +} + +// The name of the network function group to change. +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) NetworkFunctionGroupName() pulumi.StringPtrOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) *string { + return v.NetworkFunctionGroupName + }).(pulumi.StringPtrOutput) +} + +// The key-value tags that changed for the network function group. +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) Tags() DirectConnectGatewayAttachmentTagArrayOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) []DirectConnectGatewayAttachmentTag { + return v.Tags + }).(DirectConnectGatewayAttachmentTagArrayOutput) +} + +type DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput struct{ *pulumi.OutputState } + +func (DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange)(nil)).Elem() +} + +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) ToDirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) Elem() DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange { + if v != nil { + return *v + } + var ret DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange + return ret + }).(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput) +} + +// The rule number in the policy document that applies to this change. +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) AttachmentPolicyRuleNumber() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) *int { + if v == nil { + return nil + } + return v.AttachmentPolicyRuleNumber + }).(pulumi.IntPtrOutput) +} + +// The name of the network function group to change. +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) NetworkFunctionGroupName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) *string { + if v == nil { + return nil + } + return v.NetworkFunctionGroupName + }).(pulumi.StringPtrOutput) +} + +// The key-value tags that changed for the network function group. +func (o DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput) Tags() DirectConnectGatewayAttachmentTagArrayOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange) []DirectConnectGatewayAttachmentTag { + if v == nil { + return nil + } + return v.Tags + }).(DirectConnectGatewayAttachmentTagArrayOutput) +} + +// The attachment to move from one segment to another. +type DirectConnectGatewayAttachmentProposedSegmentChange struct { + // The rule number in the policy document that applies to this change. + AttachmentPolicyRuleNumber *int `pulumi:"attachmentPolicyRuleNumber"` + // The name of the segment to change. + SegmentName *string `pulumi:"segmentName"` + // The key-value tags that changed for the segment. + Tags []DirectConnectGatewayAttachmentTag `pulumi:"tags"` +} + +// DirectConnectGatewayAttachmentProposedSegmentChangeInput is an input type that accepts DirectConnectGatewayAttachmentProposedSegmentChangeArgs and DirectConnectGatewayAttachmentProposedSegmentChangeOutput values. +// You can construct a concrete instance of `DirectConnectGatewayAttachmentProposedSegmentChangeInput` via: +// +// DirectConnectGatewayAttachmentProposedSegmentChangeArgs{...} +type DirectConnectGatewayAttachmentProposedSegmentChangeInput interface { + pulumi.Input + + ToDirectConnectGatewayAttachmentProposedSegmentChangeOutput() DirectConnectGatewayAttachmentProposedSegmentChangeOutput + ToDirectConnectGatewayAttachmentProposedSegmentChangeOutputWithContext(context.Context) DirectConnectGatewayAttachmentProposedSegmentChangeOutput +} + +// The attachment to move from one segment to another. +type DirectConnectGatewayAttachmentProposedSegmentChangeArgs struct { + // The rule number in the policy document that applies to this change. + AttachmentPolicyRuleNumber pulumi.IntPtrInput `pulumi:"attachmentPolicyRuleNumber"` + // The name of the segment to change. + SegmentName pulumi.StringPtrInput `pulumi:"segmentName"` + // The key-value tags that changed for the segment. + Tags DirectConnectGatewayAttachmentTagArrayInput `pulumi:"tags"` +} + +func (DirectConnectGatewayAttachmentProposedSegmentChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectConnectGatewayAttachmentProposedSegmentChange)(nil)).Elem() +} + +func (i DirectConnectGatewayAttachmentProposedSegmentChangeArgs) ToDirectConnectGatewayAttachmentProposedSegmentChangeOutput() DirectConnectGatewayAttachmentProposedSegmentChangeOutput { + return i.ToDirectConnectGatewayAttachmentProposedSegmentChangeOutputWithContext(context.Background()) +} + +func (i DirectConnectGatewayAttachmentProposedSegmentChangeArgs) ToDirectConnectGatewayAttachmentProposedSegmentChangeOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedSegmentChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentProposedSegmentChangeOutput) +} + +func (i DirectConnectGatewayAttachmentProposedSegmentChangeArgs) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutput() DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return i.ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(context.Background()) +} + +func (i DirectConnectGatewayAttachmentProposedSegmentChangeArgs) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentProposedSegmentChangeOutput).ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(ctx) +} + +// DirectConnectGatewayAttachmentProposedSegmentChangePtrInput is an input type that accepts DirectConnectGatewayAttachmentProposedSegmentChangeArgs, DirectConnectGatewayAttachmentProposedSegmentChangePtr and DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput values. +// You can construct a concrete instance of `DirectConnectGatewayAttachmentProposedSegmentChangePtrInput` via: +// +// DirectConnectGatewayAttachmentProposedSegmentChangeArgs{...} +// +// or: +// +// nil +type DirectConnectGatewayAttachmentProposedSegmentChangePtrInput interface { + pulumi.Input + + ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutput() DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput + ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(context.Context) DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput +} + +type directConnectGatewayAttachmentProposedSegmentChangePtrType DirectConnectGatewayAttachmentProposedSegmentChangeArgs + +func DirectConnectGatewayAttachmentProposedSegmentChangePtr(v *DirectConnectGatewayAttachmentProposedSegmentChangeArgs) DirectConnectGatewayAttachmentProposedSegmentChangePtrInput { + return (*directConnectGatewayAttachmentProposedSegmentChangePtrType)(v) +} + +func (*directConnectGatewayAttachmentProposedSegmentChangePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectConnectGatewayAttachmentProposedSegmentChange)(nil)).Elem() +} + +func (i *directConnectGatewayAttachmentProposedSegmentChangePtrType) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutput() DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return i.ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(context.Background()) +} + +func (i *directConnectGatewayAttachmentProposedSegmentChangePtrType) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) +} + +// The attachment to move from one segment to another. +type DirectConnectGatewayAttachmentProposedSegmentChangeOutput struct{ *pulumi.OutputState } + +func (DirectConnectGatewayAttachmentProposedSegmentChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectConnectGatewayAttachmentProposedSegmentChange)(nil)).Elem() +} + +func (o DirectConnectGatewayAttachmentProposedSegmentChangeOutput) ToDirectConnectGatewayAttachmentProposedSegmentChangeOutput() DirectConnectGatewayAttachmentProposedSegmentChangeOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedSegmentChangeOutput) ToDirectConnectGatewayAttachmentProposedSegmentChangeOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedSegmentChangeOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedSegmentChangeOutput) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutput() DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return o.ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(context.Background()) +} + +func (o DirectConnectGatewayAttachmentProposedSegmentChangeOutput) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectConnectGatewayAttachmentProposedSegmentChange) *DirectConnectGatewayAttachmentProposedSegmentChange { + return &v + }).(DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) +} + +// The rule number in the policy document that applies to this change. +func (o DirectConnectGatewayAttachmentProposedSegmentChangeOutput) AttachmentPolicyRuleNumber() pulumi.IntPtrOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentProposedSegmentChange) *int { return v.AttachmentPolicyRuleNumber }).(pulumi.IntPtrOutput) +} + +// The name of the segment to change. +func (o DirectConnectGatewayAttachmentProposedSegmentChangeOutput) SegmentName() pulumi.StringPtrOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentProposedSegmentChange) *string { return v.SegmentName }).(pulumi.StringPtrOutput) +} + +// The key-value tags that changed for the segment. +func (o DirectConnectGatewayAttachmentProposedSegmentChangeOutput) Tags() DirectConnectGatewayAttachmentTagArrayOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentProposedSegmentChange) []DirectConnectGatewayAttachmentTag { + return v.Tags + }).(DirectConnectGatewayAttachmentTagArrayOutput) +} + +type DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput struct{ *pulumi.OutputState } + +func (DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectConnectGatewayAttachmentProposedSegmentChange)(nil)).Elem() +} + +func (o DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutput() DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) ToDirectConnectGatewayAttachmentProposedSegmentChangePtrOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput { + return o +} + +func (o DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) Elem() DirectConnectGatewayAttachmentProposedSegmentChangeOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedSegmentChange) DirectConnectGatewayAttachmentProposedSegmentChange { + if v != nil { + return *v + } + var ret DirectConnectGatewayAttachmentProposedSegmentChange + return ret + }).(DirectConnectGatewayAttachmentProposedSegmentChangeOutput) +} + +// The rule number in the policy document that applies to this change. +func (o DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) AttachmentPolicyRuleNumber() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedSegmentChange) *int { + if v == nil { + return nil + } + return v.AttachmentPolicyRuleNumber + }).(pulumi.IntPtrOutput) +} + +// The name of the segment to change. +func (o DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) SegmentName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedSegmentChange) *string { + if v == nil { + return nil + } + return v.SegmentName + }).(pulumi.StringPtrOutput) +} + +// The key-value tags that changed for the segment. +func (o DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput) Tags() DirectConnectGatewayAttachmentTagArrayOutput { + return o.ApplyT(func(v *DirectConnectGatewayAttachmentProposedSegmentChange) []DirectConnectGatewayAttachmentTag { + if v == nil { + return nil + } + return v.Tags + }).(DirectConnectGatewayAttachmentTagArrayOutput) +} + +// A key-value pair to associate with a resource. +type DirectConnectGatewayAttachmentTag struct { + // 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 -. + Key string `pulumi:"key"` + // 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 -. + Value string `pulumi:"value"` +} + +// DirectConnectGatewayAttachmentTagInput is an input type that accepts DirectConnectGatewayAttachmentTagArgs and DirectConnectGatewayAttachmentTagOutput values. +// You can construct a concrete instance of `DirectConnectGatewayAttachmentTagInput` via: +// +// DirectConnectGatewayAttachmentTagArgs{...} +type DirectConnectGatewayAttachmentTagInput interface { + pulumi.Input + + ToDirectConnectGatewayAttachmentTagOutput() DirectConnectGatewayAttachmentTagOutput + ToDirectConnectGatewayAttachmentTagOutputWithContext(context.Context) DirectConnectGatewayAttachmentTagOutput +} + +// A key-value pair to associate with a resource. +type DirectConnectGatewayAttachmentTagArgs struct { + // 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 -. + Key pulumi.StringInput `pulumi:"key"` + // 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 -. + Value pulumi.StringInput `pulumi:"value"` +} + +func (DirectConnectGatewayAttachmentTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectConnectGatewayAttachmentTag)(nil)).Elem() +} + +func (i DirectConnectGatewayAttachmentTagArgs) ToDirectConnectGatewayAttachmentTagOutput() DirectConnectGatewayAttachmentTagOutput { + return i.ToDirectConnectGatewayAttachmentTagOutputWithContext(context.Background()) +} + +func (i DirectConnectGatewayAttachmentTagArgs) ToDirectConnectGatewayAttachmentTagOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentTagOutput) +} + +// DirectConnectGatewayAttachmentTagArrayInput is an input type that accepts DirectConnectGatewayAttachmentTagArray and DirectConnectGatewayAttachmentTagArrayOutput values. +// You can construct a concrete instance of `DirectConnectGatewayAttachmentTagArrayInput` via: +// +// DirectConnectGatewayAttachmentTagArray{ DirectConnectGatewayAttachmentTagArgs{...} } +type DirectConnectGatewayAttachmentTagArrayInput interface { + pulumi.Input + + ToDirectConnectGatewayAttachmentTagArrayOutput() DirectConnectGatewayAttachmentTagArrayOutput + ToDirectConnectGatewayAttachmentTagArrayOutputWithContext(context.Context) DirectConnectGatewayAttachmentTagArrayOutput +} + +type DirectConnectGatewayAttachmentTagArray []DirectConnectGatewayAttachmentTagInput + +func (DirectConnectGatewayAttachmentTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectConnectGatewayAttachmentTag)(nil)).Elem() +} + +func (i DirectConnectGatewayAttachmentTagArray) ToDirectConnectGatewayAttachmentTagArrayOutput() DirectConnectGatewayAttachmentTagArrayOutput { + return i.ToDirectConnectGatewayAttachmentTagArrayOutputWithContext(context.Background()) +} + +func (i DirectConnectGatewayAttachmentTagArray) ToDirectConnectGatewayAttachmentTagArrayOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectConnectGatewayAttachmentTagArrayOutput) +} + +// A key-value pair to associate with a resource. +type DirectConnectGatewayAttachmentTagOutput struct{ *pulumi.OutputState } + +func (DirectConnectGatewayAttachmentTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectConnectGatewayAttachmentTag)(nil)).Elem() +} + +func (o DirectConnectGatewayAttachmentTagOutput) ToDirectConnectGatewayAttachmentTagOutput() DirectConnectGatewayAttachmentTagOutput { + return o +} + +func (o DirectConnectGatewayAttachmentTagOutput) ToDirectConnectGatewayAttachmentTagOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentTagOutput { + return o +} + +// 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 -. +func (o DirectConnectGatewayAttachmentTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentTag) string { return v.Key }).(pulumi.StringOutput) +} + +// 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 -. +func (o DirectConnectGatewayAttachmentTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v DirectConnectGatewayAttachmentTag) string { return v.Value }).(pulumi.StringOutput) +} + +type DirectConnectGatewayAttachmentTagArrayOutput struct{ *pulumi.OutputState } + +func (DirectConnectGatewayAttachmentTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectConnectGatewayAttachmentTag)(nil)).Elem() +} + +func (o DirectConnectGatewayAttachmentTagArrayOutput) ToDirectConnectGatewayAttachmentTagArrayOutput() DirectConnectGatewayAttachmentTagArrayOutput { + return o +} + +func (o DirectConnectGatewayAttachmentTagArrayOutput) ToDirectConnectGatewayAttachmentTagArrayOutputWithContext(ctx context.Context) DirectConnectGatewayAttachmentTagArrayOutput { + return o +} + +func (o DirectConnectGatewayAttachmentTagArrayOutput) Index(i pulumi.IntInput) DirectConnectGatewayAttachmentTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectConnectGatewayAttachmentTag { + return vs[0].([]DirectConnectGatewayAttachmentTag)[vs[1].(int)] + }).(DirectConnectGatewayAttachmentTagOutput) +} + // A key-value pair to associate with a global network resource. type GlobalNetworkTag struct { // 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 -. @@ -3376,6 +3849,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DeviceAwsLocationPtrInput)(nil)).Elem(), DeviceAwsLocationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeviceLocationInput)(nil)).Elem(), DeviceLocationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeviceLocationPtrInput)(nil)).Elem(), DeviceLocationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeInput)(nil)).Elem(), DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrInput)(nil)).Elem(), DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectConnectGatewayAttachmentProposedSegmentChangeInput)(nil)).Elem(), DirectConnectGatewayAttachmentProposedSegmentChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectConnectGatewayAttachmentProposedSegmentChangePtrInput)(nil)).Elem(), DirectConnectGatewayAttachmentProposedSegmentChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectConnectGatewayAttachmentTagInput)(nil)).Elem(), DirectConnectGatewayAttachmentTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectConnectGatewayAttachmentTagArrayInput)(nil)).Elem(), DirectConnectGatewayAttachmentTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*LinkBandwidthInput)(nil)).Elem(), LinkBandwidthArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SiteLocationInput)(nil)).Elem(), SiteLocationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SiteLocationPtrInput)(nil)).Elem(), SiteLocationArgs{}) @@ -3424,6 +3903,12 @@ func init() { pulumi.RegisterOutputType(DeviceAwsLocationPtrOutput{}) pulumi.RegisterOutputType(DeviceLocationOutput{}) pulumi.RegisterOutputType(DeviceLocationPtrOutput{}) + pulumi.RegisterOutputType(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeOutput{}) + pulumi.RegisterOutputType(DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangePtrOutput{}) + pulumi.RegisterOutputType(DirectConnectGatewayAttachmentProposedSegmentChangeOutput{}) + pulumi.RegisterOutputType(DirectConnectGatewayAttachmentProposedSegmentChangePtrOutput{}) + pulumi.RegisterOutputType(DirectConnectGatewayAttachmentTagOutput{}) + pulumi.RegisterOutputType(DirectConnectGatewayAttachmentTagArrayOutput{}) pulumi.RegisterOutputType(LinkBandwidthOutput{}) pulumi.RegisterOutputType(LinkBandwidthPtrOutput{}) pulumi.RegisterOutputType(SiteLocationOutput{}) diff --git a/sdk/go/aws/pipes/pulumiTypes.go b/sdk/go/aws/pipes/pulumiTypes.go index dfecc4dd79..706d92657d 100644 --- a/sdk/go/aws/pipes/pulumiTypes.go +++ b/sdk/go/aws/pipes/pulumiTypes.go @@ -4769,9 +4769,9 @@ func (o PipeS3LogDestinationPtrOutput) Prefix() pulumi.StringPtrOutput { } type PipeSageMakerPipelineParameter struct { - // Name of parameter to start execution of a SageMaker Model Building Pipeline. + // Name of parameter to start execution of a SageMaker AI Model Building Pipeline. Name string `pulumi:"name"` - // Value of parameter to start execution of a SageMaker Model Building Pipeline. + // Value of parameter to start execution of a SageMaker AI Model Building Pipeline. Value string `pulumi:"value"` } @@ -4787,9 +4787,9 @@ type PipeSageMakerPipelineParameterInput interface { } type PipeSageMakerPipelineParameterArgs struct { - // Name of parameter to start execution of a SageMaker Model Building Pipeline. + // Name of parameter to start execution of a SageMaker AI Model Building Pipeline. Name pulumi.StringInput `pulumi:"name"` - // Value of parameter to start execution of a SageMaker Model Building Pipeline. + // Value of parameter to start execution of a SageMaker AI Model Building Pipeline. Value pulumi.StringInput `pulumi:"value"` } @@ -4844,12 +4844,12 @@ func (o PipeSageMakerPipelineParameterOutput) ToPipeSageMakerPipelineParameterOu return o } -// Name of parameter to start execution of a SageMaker Model Building Pipeline. +// Name of parameter to start execution of a SageMaker AI Model Building Pipeline. func (o PipeSageMakerPipelineParameterOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v PipeSageMakerPipelineParameter) string { return v.Name }).(pulumi.StringOutput) } -// Value of parameter to start execution of a SageMaker Model Building Pipeline. +// Value of parameter to start execution of a SageMaker AI Model Building Pipeline. func (o PipeSageMakerPipelineParameterOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v PipeSageMakerPipelineParameter) string { return v.Value }).(pulumi.StringOutput) } @@ -9303,7 +9303,7 @@ type PipeTargetParameters struct { LambdaFunctionParameters *PipeTargetLambdaFunctionParameters `pulumi:"lambdaFunctionParameters"` // These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API BatchExecuteStatement. RedshiftDataParameters *PipeTargetRedshiftDataParameters `pulumi:"redshiftDataParameters"` - // The parameters for using a SageMaker pipeline as a target. + // The parameters for using a SageMaker AI pipeline as a target. SageMakerPipelineParameters *PipeTargetSageMakerPipelineParameters `pulumi:"sageMakerPipelineParameters"` // The parameters for using a Amazon SQS stream as a target. SqsQueueParameters *PipeTargetSqsQueueParameters `pulumi:"sqsQueueParameters"` @@ -9345,7 +9345,7 @@ type PipeTargetParametersArgs struct { LambdaFunctionParameters PipeTargetLambdaFunctionParametersPtrInput `pulumi:"lambdaFunctionParameters"` // These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API BatchExecuteStatement. RedshiftDataParameters PipeTargetRedshiftDataParametersPtrInput `pulumi:"redshiftDataParameters"` - // The parameters for using a SageMaker pipeline as a target. + // The parameters for using a SageMaker AI pipeline as a target. SageMakerPipelineParameters PipeTargetSageMakerPipelineParametersPtrInput `pulumi:"sageMakerPipelineParameters"` // The parameters for using a Amazon SQS stream as a target. SqsQueueParameters PipeTargetSqsQueueParametersPtrInput `pulumi:"sqsQueueParameters"` @@ -9481,7 +9481,7 @@ func (o PipeTargetParametersOutput) RedshiftDataParameters() PipeTargetRedshiftD return o.ApplyT(func(v PipeTargetParameters) *PipeTargetRedshiftDataParameters { return v.RedshiftDataParameters }).(PipeTargetRedshiftDataParametersPtrOutput) } -// The parameters for using a SageMaker pipeline as a target. +// The parameters for using a SageMaker AI pipeline as a target. func (o PipeTargetParametersOutput) SageMakerPipelineParameters() PipeTargetSageMakerPipelineParametersPtrOutput { return o.ApplyT(func(v PipeTargetParameters) *PipeTargetSageMakerPipelineParameters { return v.SageMakerPipelineParameters @@ -9621,7 +9621,7 @@ func (o PipeTargetParametersPtrOutput) RedshiftDataParameters() PipeTargetRedshi }).(PipeTargetRedshiftDataParametersPtrOutput) } -// The parameters for using a SageMaker pipeline as a target. +// The parameters for using a SageMaker AI pipeline as a target. func (o PipeTargetParametersPtrOutput) SageMakerPipelineParameters() PipeTargetSageMakerPipelineParametersPtrOutput { return o.ApplyT(func(v *PipeTargetParameters) *PipeTargetSageMakerPipelineParameters { if v == nil { @@ -9894,7 +9894,7 @@ func (o PipeTargetRedshiftDataParametersPtrOutput) WithEvent() pulumi.BoolPtrOut } type PipeTargetSageMakerPipelineParameters struct { - // List of Parameter names and values for SageMaker Model Building Pipeline execution. + // List of Parameter names and values for SageMaker AI Model Building Pipeline execution. PipelineParameterList []PipeSageMakerPipelineParameter `pulumi:"pipelineParameterList"` } @@ -9910,7 +9910,7 @@ type PipeTargetSageMakerPipelineParametersInput interface { } type PipeTargetSageMakerPipelineParametersArgs struct { - // List of Parameter names and values for SageMaker Model Building Pipeline execution. + // List of Parameter names and values for SageMaker AI Model Building Pipeline execution. PipelineParameterList PipeSageMakerPipelineParameterArrayInput `pulumi:"pipelineParameterList"` } @@ -9991,7 +9991,7 @@ func (o PipeTargetSageMakerPipelineParametersOutput) ToPipeTargetSageMakerPipeli }).(PipeTargetSageMakerPipelineParametersPtrOutput) } -// List of Parameter names and values for SageMaker Model Building Pipeline execution. +// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. func (o PipeTargetSageMakerPipelineParametersOutput) PipelineParameterList() PipeSageMakerPipelineParameterArrayOutput { return o.ApplyT(func(v PipeTargetSageMakerPipelineParameters) []PipeSageMakerPipelineParameter { return v.PipelineParameterList @@ -10022,7 +10022,7 @@ func (o PipeTargetSageMakerPipelineParametersPtrOutput) Elem() PipeTargetSageMak }).(PipeTargetSageMakerPipelineParametersOutput) } -// List of Parameter names and values for SageMaker Model Building Pipeline execution. +// List of Parameter names and values for SageMaker AI Model Building Pipeline execution. func (o PipeTargetSageMakerPipelineParametersPtrOutput) PipelineParameterList() PipeSageMakerPipelineParameterArrayOutput { return o.ApplyT(func(v *PipeTargetSageMakerPipelineParameters) []PipeSageMakerPipelineParameter { if v == nil { diff --git a/sdk/go/aws/qbusiness/application.go b/sdk/go/aws/qbusiness/application.go index 905ac22eb6..46cfd4dfce 100644 --- a/sdk/go/aws/qbusiness/application.go +++ b/sdk/go/aws/qbusiness/application.go @@ -48,7 +48,8 @@ type Application struct { // Configuration information about chat response personalization. For more information, see [Personalizing chat responses](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html) . PersonalizationConfiguration ApplicationPersonalizationConfigurationPtrOutput `pulumi:"personalizationConfiguration"` // Configuration information about Amazon Q Apps. - QAppsConfiguration ApplicationQAppsConfigurationPtrOutput `pulumi:"qAppsConfiguration"` + QAppsConfiguration ApplicationQAppsConfigurationPtrOutput `pulumi:"qAppsConfiguration"` + // The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. QuickSightConfiguration ApplicationQuickSightConfigurationPtrOutput `pulumi:"quickSightConfiguration"` // The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions) and use it as the application's role. RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` @@ -134,7 +135,8 @@ type applicationArgs struct { // Configuration information about chat response personalization. For more information, see [Personalizing chat responses](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html) . PersonalizationConfiguration *ApplicationPersonalizationConfiguration `pulumi:"personalizationConfiguration"` // Configuration information about Amazon Q Apps. - QAppsConfiguration *ApplicationQAppsConfiguration `pulumi:"qAppsConfiguration"` + QAppsConfiguration *ApplicationQAppsConfiguration `pulumi:"qAppsConfiguration"` + // The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. QuickSightConfiguration *ApplicationQuickSightConfiguration `pulumi:"quickSightConfiguration"` // The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions) and use it as the application's role. RoleArn *string `pulumi:"roleArn"` @@ -167,7 +169,8 @@ type ApplicationArgs struct { // Configuration information about chat response personalization. For more information, see [Personalizing chat responses](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html) . PersonalizationConfiguration ApplicationPersonalizationConfigurationPtrInput // Configuration information about Amazon Q Apps. - QAppsConfiguration ApplicationQAppsConfigurationPtrInput + QAppsConfiguration ApplicationQAppsConfigurationPtrInput + // The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. QuickSightConfiguration ApplicationQuickSightConfigurationPtrInput // The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions) and use it as the application's role. RoleArn pulumi.StringPtrInput @@ -293,6 +296,7 @@ func (o ApplicationOutput) QAppsConfiguration() ApplicationQAppsConfigurationPtr return o.ApplyT(func(v *Application) ApplicationQAppsConfigurationPtrOutput { return v.QAppsConfiguration }).(ApplicationQAppsConfigurationPtrOutput) } +// The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. func (o ApplicationOutput) QuickSightConfiguration() ApplicationQuickSightConfigurationPtrOutput { return o.ApplyT(func(v *Application) ApplicationQuickSightConfigurationPtrOutput { return v.QuickSightConfiguration }).(ApplicationQuickSightConfigurationPtrOutput) } diff --git a/sdk/go/aws/qbusiness/dataAccessor.go b/sdk/go/aws/qbusiness/dataAccessor.go index f755c26f4a..a9d2ac1211 100644 --- a/sdk/go/aws/qbusiness/dataAccessor.go +++ b/sdk/go/aws/qbusiness/dataAccessor.go @@ -17,16 +17,26 @@ import ( type DataAccessor struct { pulumi.CustomResourceState + // A list of action configurations specifying the allowed actions and any associated filters. ActionConfigurations DataAccessorActionConfigurationArrayOutput `pulumi:"actionConfigurations"` - ApplicationId pulumi.StringPtrOutput `pulumi:"applicationId"` - CreatedAt pulumi.StringOutput `pulumi:"createdAt"` - DataAccessorArn pulumi.StringOutput `pulumi:"dataAccessorArn"` - DataAccessorId pulumi.StringOutput `pulumi:"dataAccessorId"` - DisplayName pulumi.StringOutput `pulumi:"displayName"` - IdcApplicationArn pulumi.StringOutput `pulumi:"idcApplicationArn"` - Principal pulumi.StringOutput `pulumi:"principal"` - Tags aws.TagArrayOutput `pulumi:"tags"` - UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` + // The unique identifier of the Amazon Q Business application. + ApplicationId pulumi.StringPtrOutput `pulumi:"applicationId"` + // The timestamp when the data accessor was created. + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + // The Amazon Resource Name (ARN) of the data accessor. + DataAccessorArn pulumi.StringOutput `pulumi:"dataAccessorArn"` + // The unique identifier of the data accessor. + DataAccessorId pulumi.StringOutput `pulumi:"dataAccessorId"` + // The friendly name of the data accessor. + DisplayName pulumi.StringOutput `pulumi:"displayName"` + // The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + IdcApplicationArn pulumi.StringOutput `pulumi:"idcApplicationArn"` + // The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + Principal pulumi.StringOutput `pulumi:"principal"` + // The tags to associate with the data accessor. + Tags aws.TagArrayOutput `pulumi:"tags"` + // The timestamp when the data accessor was last updated. + UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` } // NewDataAccessor registers a new resource with the given unique name, arguments, and options. @@ -83,20 +93,30 @@ func (DataAccessorState) ElementType() reflect.Type { } type dataAccessorArgs struct { + // A list of action configurations specifying the allowed actions and any associated filters. ActionConfigurations []DataAccessorActionConfiguration `pulumi:"actionConfigurations"` - ApplicationId *string `pulumi:"applicationId"` - DisplayName string `pulumi:"displayName"` - Principal string `pulumi:"principal"` - Tags []aws.Tag `pulumi:"tags"` + // The unique identifier of the Amazon Q Business application. + ApplicationId *string `pulumi:"applicationId"` + // The friendly name of the data accessor. + DisplayName string `pulumi:"displayName"` + // The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + Principal string `pulumi:"principal"` + // The tags to associate with the data accessor. + Tags []aws.Tag `pulumi:"tags"` } // The set of arguments for constructing a DataAccessor resource. type DataAccessorArgs struct { + // A list of action configurations specifying the allowed actions and any associated filters. ActionConfigurations DataAccessorActionConfigurationArrayInput - ApplicationId pulumi.StringPtrInput - DisplayName pulumi.StringInput - Principal pulumi.StringInput - Tags aws.TagArrayInput + // The unique identifier of the Amazon Q Business application. + ApplicationId pulumi.StringPtrInput + // The friendly name of the data accessor. + DisplayName pulumi.StringInput + // The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + Principal pulumi.StringInput + // The tags to associate with the data accessor. + Tags aws.TagArrayInput } func (DataAccessorArgs) ElementType() reflect.Type { @@ -136,42 +156,52 @@ func (o DataAccessorOutput) ToDataAccessorOutputWithContext(ctx context.Context) return o } +// A list of action configurations specifying the allowed actions and any associated filters. func (o DataAccessorOutput) ActionConfigurations() DataAccessorActionConfigurationArrayOutput { return o.ApplyT(func(v *DataAccessor) DataAccessorActionConfigurationArrayOutput { return v.ActionConfigurations }).(DataAccessorActionConfigurationArrayOutput) } +// The unique identifier of the Amazon Q Business application. func (o DataAccessorOutput) ApplicationId() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringPtrOutput { return v.ApplicationId }).(pulumi.StringPtrOutput) } +// The timestamp when the data accessor was created. func (o DataAccessorOutput) CreatedAt() pulumi.StringOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) } +// The Amazon Resource Name (ARN) of the data accessor. func (o DataAccessorOutput) DataAccessorArn() pulumi.StringOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringOutput { return v.DataAccessorArn }).(pulumi.StringOutput) } +// The unique identifier of the data accessor. func (o DataAccessorOutput) DataAccessorId() pulumi.StringOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringOutput { return v.DataAccessorId }).(pulumi.StringOutput) } +// The friendly name of the data accessor. func (o DataAccessorOutput) DisplayName() pulumi.StringOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput) } +// The Amazon Resource Name (ARN) of the associated IAM Identity Center application. func (o DataAccessorOutput) IdcApplicationArn() pulumi.StringOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringOutput { return v.IdcApplicationArn }).(pulumi.StringOutput) } +// The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. func (o DataAccessorOutput) Principal() pulumi.StringOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringOutput { return v.Principal }).(pulumi.StringOutput) } +// The tags to associate with the data accessor. func (o DataAccessorOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *DataAccessor) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } +// The timestamp when the data accessor was last updated. func (o DataAccessorOutput) UpdatedAt() pulumi.StringOutput { return o.ApplyT(func(v *DataAccessor) pulumi.StringOutput { return v.UpdatedAt }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/qbusiness/dataSource.go b/sdk/go/aws/qbusiness/dataSource.go index 1378a73a70..b92b213af2 100644 --- a/sdk/go/aws/qbusiness/dataSource.go +++ b/sdk/go/aws/qbusiness/dataSource.go @@ -48,7 +48,8 @@ type DataSource struct { // For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . DocumentEnrichmentConfiguration DataSourceDocumentEnrichmentConfigurationPtrOutput `pulumi:"documentEnrichmentConfiguration"` // The identifier of the index the data source is attached to. - IndexId pulumi.StringOutput `pulumi:"indexId"` + IndexId pulumi.StringOutput `pulumi:"indexId"` + // The configuration for extracting information from media in documents. MediaExtractionConfiguration DataSourceMediaExtractionConfigurationPtrOutput `pulumi:"mediaExtractionConfiguration"` // The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` @@ -150,7 +151,8 @@ type dataSourceArgs struct { // For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . DocumentEnrichmentConfiguration *DataSourceDocumentEnrichmentConfiguration `pulumi:"documentEnrichmentConfiguration"` // The identifier of the index the data source is attached to. - IndexId string `pulumi:"indexId"` + IndexId string `pulumi:"indexId"` + // The configuration for extracting information from media in documents. MediaExtractionConfiguration *DataSourceMediaExtractionConfiguration `pulumi:"mediaExtractionConfiguration"` // The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. RoleArn *string `pulumi:"roleArn"` @@ -191,7 +193,8 @@ type DataSourceArgs struct { // For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . DocumentEnrichmentConfiguration DataSourceDocumentEnrichmentConfigurationPtrInput // The identifier of the index the data source is attached to. - IndexId pulumi.StringInput + IndexId pulumi.StringInput + // The configuration for extracting information from media in documents. MediaExtractionConfiguration DataSourceMediaExtractionConfigurationPtrInput // The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. RoleArn pulumi.StringPtrInput @@ -303,6 +306,7 @@ func (o DataSourceOutput) IndexId() pulumi.StringOutput { return o.ApplyT(func(v *DataSource) pulumi.StringOutput { return v.IndexId }).(pulumi.StringOutput) } +// The configuration for extracting information from media in documents. func (o DataSourceOutput) MediaExtractionConfiguration() DataSourceMediaExtractionConfigurationPtrOutput { return o.ApplyT(func(v *DataSource) DataSourceMediaExtractionConfigurationPtrOutput { return v.MediaExtractionConfiguration diff --git a/sdk/go/aws/qbusiness/getDataAccessor.go b/sdk/go/aws/qbusiness/getDataAccessor.go index 891d8d60d6..b13115b9ec 100644 --- a/sdk/go/aws/qbusiness/getDataAccessor.go +++ b/sdk/go/aws/qbusiness/getDataAccessor.go @@ -24,19 +24,29 @@ func LookupDataAccessor(ctx *pulumi.Context, args *LookupDataAccessorArgs, opts } type LookupDataAccessorArgs struct { - ApplicationId string `pulumi:"applicationId"` + // The unique identifier of the Amazon Q Business application. + ApplicationId string `pulumi:"applicationId"` + // The unique identifier of the data accessor. DataAccessorId string `pulumi:"dataAccessorId"` } type LookupDataAccessorResult struct { + // A list of action configurations specifying the allowed actions and any associated filters. ActionConfigurations []DataAccessorActionConfiguration `pulumi:"actionConfigurations"` - CreatedAt *string `pulumi:"createdAt"` - DataAccessorArn *string `pulumi:"dataAccessorArn"` - DataAccessorId *string `pulumi:"dataAccessorId"` - DisplayName *string `pulumi:"displayName"` - IdcApplicationArn *string `pulumi:"idcApplicationArn"` - Tags []aws.Tag `pulumi:"tags"` - UpdatedAt *string `pulumi:"updatedAt"` + // The timestamp when the data accessor was created. + CreatedAt *string `pulumi:"createdAt"` + // The Amazon Resource Name (ARN) of the data accessor. + DataAccessorArn *string `pulumi:"dataAccessorArn"` + // The unique identifier of the data accessor. + DataAccessorId *string `pulumi:"dataAccessorId"` + // The friendly name of the data accessor. + DisplayName *string `pulumi:"displayName"` + // The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + IdcApplicationArn *string `pulumi:"idcApplicationArn"` + // The tags to associate with the data accessor. + Tags []aws.Tag `pulumi:"tags"` + // The timestamp when the data accessor was last updated. + UpdatedAt *string `pulumi:"updatedAt"` } func LookupDataAccessorOutput(ctx *pulumi.Context, args LookupDataAccessorOutputArgs, opts ...pulumi.InvokeOption) LookupDataAccessorResultOutput { @@ -49,7 +59,9 @@ func LookupDataAccessorOutput(ctx *pulumi.Context, args LookupDataAccessorOutput } type LookupDataAccessorOutputArgs struct { - ApplicationId pulumi.StringInput `pulumi:"applicationId"` + // The unique identifier of the Amazon Q Business application. + ApplicationId pulumi.StringInput `pulumi:"applicationId"` + // The unique identifier of the data accessor. DataAccessorId pulumi.StringInput `pulumi:"dataAccessorId"` } @@ -71,34 +83,42 @@ func (o LookupDataAccessorResultOutput) ToLookupDataAccessorResultOutputWithCont return o } +// A list of action configurations specifying the allowed actions and any associated filters. func (o LookupDataAccessorResultOutput) ActionConfigurations() DataAccessorActionConfigurationArrayOutput { return o.ApplyT(func(v LookupDataAccessorResult) []DataAccessorActionConfiguration { return v.ActionConfigurations }).(DataAccessorActionConfigurationArrayOutput) } +// The timestamp when the data accessor was created. func (o LookupDataAccessorResultOutput) CreatedAt() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDataAccessorResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) } +// The Amazon Resource Name (ARN) of the data accessor. func (o LookupDataAccessorResultOutput) DataAccessorArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDataAccessorResult) *string { return v.DataAccessorArn }).(pulumi.StringPtrOutput) } +// The unique identifier of the data accessor. func (o LookupDataAccessorResultOutput) DataAccessorId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDataAccessorResult) *string { return v.DataAccessorId }).(pulumi.StringPtrOutput) } +// The friendly name of the data accessor. func (o LookupDataAccessorResultOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDataAccessorResult) *string { return v.DisplayName }).(pulumi.StringPtrOutput) } +// The Amazon Resource Name (ARN) of the associated IAM Identity Center application. func (o LookupDataAccessorResultOutput) IdcApplicationArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDataAccessorResult) *string { return v.IdcApplicationArn }).(pulumi.StringPtrOutput) } +// The tags to associate with the data accessor. func (o LookupDataAccessorResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupDataAccessorResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } +// The timestamp when the data accessor was last updated. func (o LookupDataAccessorResultOutput) UpdatedAt() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDataAccessorResult) *string { return v.UpdatedAt }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/qbusiness/getDataSource.go b/sdk/go/aws/qbusiness/getDataSource.go index bc3f905214..1698472a2a 100644 --- a/sdk/go/aws/qbusiness/getDataSource.go +++ b/sdk/go/aws/qbusiness/getDataSource.go @@ -61,7 +61,8 @@ type LookupDataSourceResult struct { // // For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . DocumentEnrichmentConfiguration *DataSourceDocumentEnrichmentConfiguration `pulumi:"documentEnrichmentConfiguration"` - MediaExtractionConfiguration *DataSourceMediaExtractionConfiguration `pulumi:"mediaExtractionConfiguration"` + // The configuration for extracting information from media in documents. + MediaExtractionConfiguration *DataSourceMediaExtractionConfiguration `pulumi:"mediaExtractionConfiguration"` // The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. RoleArn *string `pulumi:"roleArn"` // The status of the Amazon Q Business data source. @@ -167,6 +168,7 @@ func (o LookupDataSourceResultOutput) DocumentEnrichmentConfiguration() DataSour }).(DataSourceDocumentEnrichmentConfigurationPtrOutput) } +// The configuration for extracting information from media in documents. func (o LookupDataSourceResultOutput) MediaExtractionConfiguration() DataSourceMediaExtractionConfigurationPtrOutput { return o.ApplyT(func(v LookupDataSourceResult) *DataSourceMediaExtractionConfiguration { return v.MediaExtractionConfiguration diff --git a/sdk/go/aws/qbusiness/getWebExperience.go b/sdk/go/aws/qbusiness/getWebExperience.go index 7655f273e9..2777c9245c 100644 --- a/sdk/go/aws/qbusiness/getWebExperience.go +++ b/sdk/go/aws/qbusiness/getWebExperience.go @@ -32,7 +32,8 @@ type LookupWebExperienceArgs struct { type LookupWebExperienceResult struct { // The Unix timestamp when the Amazon Q Business application was last updated. - CreatedAt *string `pulumi:"createdAt"` + CreatedAt *string `pulumi:"createdAt"` + // Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. CustomizationConfiguration *WebExperienceCustomizationConfiguration `pulumi:"customizationConfiguration"` // The endpoint URLs for your Amazon Q Business web experience. The URLs are unique and fully hosted by AWS . DefaultEndpoint *string `pulumi:"defaultEndpoint"` @@ -105,6 +106,7 @@ func (o LookupWebExperienceResultOutput) CreatedAt() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupWebExperienceResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) } +// Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. func (o LookupWebExperienceResultOutput) CustomizationConfiguration() WebExperienceCustomizationConfigurationPtrOutput { return o.ApplyT(func(v LookupWebExperienceResult) *WebExperienceCustomizationConfiguration { return v.CustomizationConfiguration diff --git a/sdk/go/aws/qbusiness/permission.go b/sdk/go/aws/qbusiness/permission.go index 50e4cc8872..9658939a07 100644 --- a/sdk/go/aws/qbusiness/permission.go +++ b/sdk/go/aws/qbusiness/permission.go @@ -16,10 +16,14 @@ import ( type Permission struct { pulumi.CustomResourceState - Actions pulumi.StringArrayOutput `pulumi:"actions"` - ApplicationId pulumi.StringOutput `pulumi:"applicationId"` - Principal pulumi.StringOutput `pulumi:"principal"` - StatementId pulumi.StringOutput `pulumi:"statementId"` + // The list of Amazon Q Business actions that the ISV is allowed to perform. + Actions pulumi.StringArrayOutput `pulumi:"actions"` + // The unique identifier of the Amazon Q Business application. + ApplicationId pulumi.StringOutput `pulumi:"applicationId"` + // Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + Principal pulumi.StringOutput `pulumi:"principal"` + // A unique identifier for the policy statement. + StatementId pulumi.StringOutput `pulumi:"statementId"` } // NewPermission registers a new resource with the given unique name, arguments, and options. @@ -81,18 +85,26 @@ func (PermissionState) ElementType() reflect.Type { } type permissionArgs struct { - Actions []string `pulumi:"actions"` - ApplicationId string `pulumi:"applicationId"` - Principal string `pulumi:"principal"` - StatementId string `pulumi:"statementId"` + // The list of Amazon Q Business actions that the ISV is allowed to perform. + Actions []string `pulumi:"actions"` + // The unique identifier of the Amazon Q Business application. + ApplicationId string `pulumi:"applicationId"` + // Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + Principal string `pulumi:"principal"` + // A unique identifier for the policy statement. + StatementId string `pulumi:"statementId"` } // The set of arguments for constructing a Permission resource. type PermissionArgs struct { - Actions pulumi.StringArrayInput + // The list of Amazon Q Business actions that the ISV is allowed to perform. + Actions pulumi.StringArrayInput + // The unique identifier of the Amazon Q Business application. ApplicationId pulumi.StringInput - Principal pulumi.StringInput - StatementId pulumi.StringInput + // Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + Principal pulumi.StringInput + // A unique identifier for the policy statement. + StatementId pulumi.StringInput } func (PermissionArgs) ElementType() reflect.Type { @@ -132,18 +144,22 @@ func (o PermissionOutput) ToPermissionOutputWithContext(ctx context.Context) Per return o } +// The list of Amazon Q Business actions that the ISV is allowed to perform. func (o PermissionOutput) Actions() pulumi.StringArrayOutput { return o.ApplyT(func(v *Permission) pulumi.StringArrayOutput { return v.Actions }).(pulumi.StringArrayOutput) } +// The unique identifier of the Amazon Q Business application. func (o PermissionOutput) ApplicationId() pulumi.StringOutput { return o.ApplyT(func(v *Permission) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) } +// Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. func (o PermissionOutput) Principal() pulumi.StringOutput { return o.ApplyT(func(v *Permission) pulumi.StringOutput { return v.Principal }).(pulumi.StringOutput) } +// A unique identifier for the policy statement. func (o PermissionOutput) StatementId() pulumi.StringOutput { return o.ApplyT(func(v *Permission) pulumi.StringOutput { return v.StatementId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/qbusiness/pulumiTypes.go b/sdk/go/aws/qbusiness/pulumiTypes.go index 06d8b2617f..22157e9099 100644 --- a/sdk/go/aws/qbusiness/pulumiTypes.go +++ b/sdk/go/aws/qbusiness/pulumiTypes.go @@ -726,6 +726,7 @@ func (o ApplicationQAppsConfigurationPtrOutput) QAppsControlMode() ApplicationQA } type ApplicationQuickSightConfiguration struct { + // The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . ClientNamespace string `pulumi:"clientNamespace"` } @@ -741,6 +742,7 @@ type ApplicationQuickSightConfigurationInput interface { } type ApplicationQuickSightConfigurationArgs struct { + // The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . ClientNamespace pulumi.StringInput `pulumi:"clientNamespace"` } @@ -821,6 +823,7 @@ func (o ApplicationQuickSightConfigurationOutput) ToApplicationQuickSightConfigu }).(ApplicationQuickSightConfigurationPtrOutput) } +// The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . func (o ApplicationQuickSightConfigurationOutput) ClientNamespace() pulumi.StringOutput { return o.ApplyT(func(v ApplicationQuickSightConfiguration) string { return v.ClientNamespace }).(pulumi.StringOutput) } @@ -849,6 +852,7 @@ func (o ApplicationQuickSightConfigurationPtrOutput) Elem() ApplicationQuickSigh }).(ApplicationQuickSightConfigurationOutput) } +// The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . func (o ApplicationQuickSightConfigurationPtrOutput) ClientNamespace() pulumi.StringPtrOutput { return o.ApplyT(func(v *ApplicationQuickSightConfiguration) *string { if v == nil { @@ -866,7 +870,9 @@ type ApplicationTag struct { } type DataAccessorActionConfiguration struct { - Action string `pulumi:"action"` + // The Amazon Q Business action that is allowed. + Action string `pulumi:"action"` + // The filter configuration for the action, if any. FilterConfiguration *DataAccessorActionFilterConfiguration `pulumi:"filterConfiguration"` } @@ -882,7 +888,9 @@ type DataAccessorActionConfigurationInput interface { } type DataAccessorActionConfigurationArgs struct { - Action pulumi.StringInput `pulumi:"action"` + // The Amazon Q Business action that is allowed. + Action pulumi.StringInput `pulumi:"action"` + // The filter configuration for the action, if any. FilterConfiguration DataAccessorActionFilterConfigurationPtrInput `pulumi:"filterConfiguration"` } @@ -937,10 +945,12 @@ func (o DataAccessorActionConfigurationOutput) ToDataAccessorActionConfiguration return o } +// The Amazon Q Business action that is allowed. func (o DataAccessorActionConfigurationOutput) Action() pulumi.StringOutput { return o.ApplyT(func(v DataAccessorActionConfiguration) string { return v.Action }).(pulumi.StringOutput) } +// The filter configuration for the action, if any. func (o DataAccessorActionConfigurationOutput) FilterConfiguration() DataAccessorActionFilterConfigurationPtrOutput { return o.ApplyT(func(v DataAccessorActionConfiguration) *DataAccessorActionFilterConfiguration { return v.FilterConfiguration @@ -968,6 +978,7 @@ func (o DataAccessorActionConfigurationArrayOutput) Index(i pulumi.IntInput) Dat } type DataAccessorActionFilterConfiguration struct { + // Enables filtering of responses based on document attributes or metadata fields. DocumentAttributeFilter DataAccessorAttributeFilter `pulumi:"documentAttributeFilter"` } @@ -983,6 +994,7 @@ type DataAccessorActionFilterConfigurationInput interface { } type DataAccessorActionFilterConfigurationArgs struct { + // Enables filtering of responses based on document attributes or metadata fields. DocumentAttributeFilter DataAccessorAttributeFilterInput `pulumi:"documentAttributeFilter"` } @@ -1063,6 +1075,7 @@ func (o DataAccessorActionFilterConfigurationOutput) ToDataAccessorActionFilterC }).(DataAccessorActionFilterConfigurationPtrOutput) } +// Enables filtering of responses based on document attributes or metadata fields. func (o DataAccessorActionFilterConfigurationOutput) DocumentAttributeFilter() DataAccessorAttributeFilterOutput { return o.ApplyT(func(v DataAccessorActionFilterConfiguration) DataAccessorAttributeFilter { return v.DocumentAttributeFilter @@ -1093,6 +1106,7 @@ func (o DataAccessorActionFilterConfigurationPtrOutput) Elem() DataAccessorActio }).(DataAccessorActionFilterConfigurationOutput) } +// Enables filtering of responses based on document attributes or metadata fields. func (o DataAccessorActionFilterConfigurationPtrOutput) DocumentAttributeFilter() DataAccessorAttributeFilterPtrOutput { return o.ApplyT(func(v *DataAccessorActionFilterConfiguration) *DataAccessorAttributeFilter { if v == nil { @@ -1103,16 +1117,26 @@ func (o DataAccessorActionFilterConfigurationPtrOutput) DocumentAttributeFilter( } type DataAccessorAttributeFilter struct { - AndAllFilters []DataAccessorAttributeFilter `pulumi:"andAllFilters"` - ContainsAll *DataAccessorDocumentAttribute `pulumi:"containsAll"` - ContainsAny *DataAccessorDocumentAttribute `pulumi:"containsAny"` - EqualsTo *DataAccessorDocumentAttribute `pulumi:"equalsTo"` - GreaterThan *DataAccessorDocumentAttribute `pulumi:"greaterThan"` + // Performs a logical `AND` operation on all supplied filters. + AndAllFilters []DataAccessorAttributeFilter `pulumi:"andAllFilters"` + // Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + ContainsAll *DataAccessorDocumentAttribute `pulumi:"containsAll"` + // Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + ContainsAny *DataAccessorDocumentAttribute `pulumi:"containsAny"` + // Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + EqualsTo *DataAccessorDocumentAttribute `pulumi:"equalsTo"` + // Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + GreaterThan *DataAccessorDocumentAttribute `pulumi:"greaterThan"` + // Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . GreaterThanOrEquals *DataAccessorDocumentAttribute `pulumi:"greaterThanOrEquals"` - LessThan *DataAccessorDocumentAttribute `pulumi:"lessThan"` - LessThanOrEquals *DataAccessorDocumentAttribute `pulumi:"lessThanOrEquals"` - NotFilter *DataAccessorAttributeFilter `pulumi:"notFilter"` - OrAllFilters []DataAccessorAttributeFilter `pulumi:"orAllFilters"` + // Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + LessThan *DataAccessorDocumentAttribute `pulumi:"lessThan"` + // Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + LessThanOrEquals *DataAccessorDocumentAttribute `pulumi:"lessThanOrEquals"` + // Performs a logical `NOT` operation on all supplied filters. + NotFilter *DataAccessorAttributeFilter `pulumi:"notFilter"` + // Performs a logical `OR` operation on all supplied filters. + OrAllFilters []DataAccessorAttributeFilter `pulumi:"orAllFilters"` } // DataAccessorAttributeFilterInput is an input type that accepts DataAccessorAttributeFilterArgs and DataAccessorAttributeFilterOutput values. @@ -1127,16 +1151,26 @@ type DataAccessorAttributeFilterInput interface { } type DataAccessorAttributeFilterArgs struct { - AndAllFilters DataAccessorAttributeFilterArrayInput `pulumi:"andAllFilters"` - ContainsAll DataAccessorDocumentAttributePtrInput `pulumi:"containsAll"` - ContainsAny DataAccessorDocumentAttributePtrInput `pulumi:"containsAny"` - EqualsTo DataAccessorDocumentAttributePtrInput `pulumi:"equalsTo"` - GreaterThan DataAccessorDocumentAttributePtrInput `pulumi:"greaterThan"` + // Performs a logical `AND` operation on all supplied filters. + AndAllFilters DataAccessorAttributeFilterArrayInput `pulumi:"andAllFilters"` + // Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + ContainsAll DataAccessorDocumentAttributePtrInput `pulumi:"containsAll"` + // Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + ContainsAny DataAccessorDocumentAttributePtrInput `pulumi:"containsAny"` + // Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + EqualsTo DataAccessorDocumentAttributePtrInput `pulumi:"equalsTo"` + // Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + GreaterThan DataAccessorDocumentAttributePtrInput `pulumi:"greaterThan"` + // Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . GreaterThanOrEquals DataAccessorDocumentAttributePtrInput `pulumi:"greaterThanOrEquals"` - LessThan DataAccessorDocumentAttributePtrInput `pulumi:"lessThan"` - LessThanOrEquals DataAccessorDocumentAttributePtrInput `pulumi:"lessThanOrEquals"` - NotFilter DataAccessorAttributeFilterPtrInput `pulumi:"notFilter"` - OrAllFilters DataAccessorAttributeFilterArrayInput `pulumi:"orAllFilters"` + // Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + LessThan DataAccessorDocumentAttributePtrInput `pulumi:"lessThan"` + // Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + LessThanOrEquals DataAccessorDocumentAttributePtrInput `pulumi:"lessThanOrEquals"` + // Performs a logical `NOT` operation on all supplied filters. + NotFilter DataAccessorAttributeFilterPtrInput `pulumi:"notFilter"` + // Performs a logical `OR` operation on all supplied filters. + OrAllFilters DataAccessorAttributeFilterArrayInput `pulumi:"orAllFilters"` } func (DataAccessorAttributeFilterArgs) ElementType() reflect.Type { @@ -1241,42 +1275,52 @@ func (o DataAccessorAttributeFilterOutput) ToDataAccessorAttributeFilterPtrOutpu }).(DataAccessorAttributeFilterPtrOutput) } +// Performs a logical `AND` operation on all supplied filters. func (o DataAccessorAttributeFilterOutput) AndAllFilters() DataAccessorAttributeFilterArrayOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) []DataAccessorAttributeFilter { return v.AndAllFilters }).(DataAccessorAttributeFilterArrayOutput) } +// Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . func (o DataAccessorAttributeFilterOutput) ContainsAll() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { return v.ContainsAll }).(DataAccessorDocumentAttributePtrOutput) } +// Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . func (o DataAccessorAttributeFilterOutput) ContainsAny() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { return v.ContainsAny }).(DataAccessorDocumentAttributePtrOutput) } +// Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . func (o DataAccessorAttributeFilterOutput) EqualsTo() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { return v.EqualsTo }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterOutput) GreaterThan() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { return v.GreaterThan }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterOutput) GreaterThanOrEquals() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { return v.GreaterThanOrEquals }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterOutput) LessThan() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { return v.LessThan }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterOutput) LessThanOrEquals() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { return v.LessThanOrEquals }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a logical `NOT` operation on all supplied filters. func (o DataAccessorAttributeFilterOutput) NotFilter() DataAccessorAttributeFilterPtrOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) *DataAccessorAttributeFilter { return v.NotFilter }).(DataAccessorAttributeFilterPtrOutput) } +// Performs a logical `OR` operation on all supplied filters. func (o DataAccessorAttributeFilterOutput) OrAllFilters() DataAccessorAttributeFilterArrayOutput { return o.ApplyT(func(v DataAccessorAttributeFilter) []DataAccessorAttributeFilter { return v.OrAllFilters }).(DataAccessorAttributeFilterArrayOutput) } @@ -1305,6 +1349,7 @@ func (o DataAccessorAttributeFilterPtrOutput) Elem() DataAccessorAttributeFilter }).(DataAccessorAttributeFilterOutput) } +// Performs a logical `AND` operation on all supplied filters. func (o DataAccessorAttributeFilterPtrOutput) AndAllFilters() DataAccessorAttributeFilterArrayOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) []DataAccessorAttributeFilter { if v == nil { @@ -1314,6 +1359,7 @@ func (o DataAccessorAttributeFilterPtrOutput) AndAllFilters() DataAccessorAttrib }).(DataAccessorAttributeFilterArrayOutput) } +// Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . func (o DataAccessorAttributeFilterPtrOutput) ContainsAll() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { if v == nil { @@ -1323,6 +1369,7 @@ func (o DataAccessorAttributeFilterPtrOutput) ContainsAll() DataAccessorDocument }).(DataAccessorDocumentAttributePtrOutput) } +// Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . func (o DataAccessorAttributeFilterPtrOutput) ContainsAny() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { if v == nil { @@ -1332,6 +1379,7 @@ func (o DataAccessorAttributeFilterPtrOutput) ContainsAny() DataAccessorDocument }).(DataAccessorDocumentAttributePtrOutput) } +// Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . func (o DataAccessorAttributeFilterPtrOutput) EqualsTo() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { if v == nil { @@ -1341,6 +1389,7 @@ func (o DataAccessorAttributeFilterPtrOutput) EqualsTo() DataAccessorDocumentAtt }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterPtrOutput) GreaterThan() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { if v == nil { @@ -1350,6 +1399,7 @@ func (o DataAccessorAttributeFilterPtrOutput) GreaterThan() DataAccessorDocument }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterPtrOutput) GreaterThanOrEquals() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { if v == nil { @@ -1359,6 +1409,7 @@ func (o DataAccessorAttributeFilterPtrOutput) GreaterThanOrEquals() DataAccessor }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterPtrOutput) LessThan() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { if v == nil { @@ -1368,6 +1419,7 @@ func (o DataAccessorAttributeFilterPtrOutput) LessThan() DataAccessorDocumentAtt }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . func (o DataAccessorAttributeFilterPtrOutput) LessThanOrEquals() DataAccessorDocumentAttributePtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorDocumentAttribute { if v == nil { @@ -1377,6 +1429,7 @@ func (o DataAccessorAttributeFilterPtrOutput) LessThanOrEquals() DataAccessorDoc }).(DataAccessorDocumentAttributePtrOutput) } +// Performs a logical `NOT` operation on all supplied filters. func (o DataAccessorAttributeFilterPtrOutput) NotFilter() DataAccessorAttributeFilterPtrOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) *DataAccessorAttributeFilter { if v == nil { @@ -1386,6 +1439,7 @@ func (o DataAccessorAttributeFilterPtrOutput) NotFilter() DataAccessorAttributeF }).(DataAccessorAttributeFilterPtrOutput) } +// Performs a logical `OR` operation on all supplied filters. func (o DataAccessorAttributeFilterPtrOutput) OrAllFilters() DataAccessorAttributeFilterArrayOutput { return o.ApplyT(func(v *DataAccessorAttributeFilter) []DataAccessorAttributeFilter { if v == nil { @@ -1416,7 +1470,9 @@ func (o DataAccessorAttributeFilterArrayOutput) Index(i pulumi.IntInput) DataAcc } type DataAccessorDocumentAttribute struct { - Name string `pulumi:"name"` + // The identifier for the attribute. + Name string `pulumi:"name"` + // The value of the attribute. Value interface{} `pulumi:"value"` } @@ -1432,8 +1488,10 @@ type DataAccessorDocumentAttributeInput interface { } type DataAccessorDocumentAttributeArgs struct { - Name pulumi.StringInput `pulumi:"name"` - Value pulumi.Input `pulumi:"value"` + // The identifier for the attribute. + Name pulumi.StringInput `pulumi:"name"` + // The value of the attribute. + Value pulumi.Input `pulumi:"value"` } func (DataAccessorDocumentAttributeArgs) ElementType() reflect.Type { @@ -1513,10 +1571,12 @@ func (o DataAccessorDocumentAttributeOutput) ToDataAccessorDocumentAttributePtrO }).(DataAccessorDocumentAttributePtrOutput) } +// The identifier for the attribute. func (o DataAccessorDocumentAttributeOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v DataAccessorDocumentAttribute) string { return v.Name }).(pulumi.StringOutput) } +// The value of the attribute. func (o DataAccessorDocumentAttributeOutput) Value() pulumi.AnyOutput { return o.ApplyT(func(v DataAccessorDocumentAttribute) interface{} { return v.Value }).(pulumi.AnyOutput) } @@ -1545,6 +1605,7 @@ func (o DataAccessorDocumentAttributePtrOutput) Elem() DataAccessorDocumentAttri }).(DataAccessorDocumentAttributeOutput) } +// The identifier for the attribute. func (o DataAccessorDocumentAttributePtrOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataAccessorDocumentAttribute) *string { if v == nil { @@ -1554,6 +1615,7 @@ func (o DataAccessorDocumentAttributePtrOutput) Name() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// The value of the attribute. func (o DataAccessorDocumentAttributePtrOutput) Value() pulumi.AnyOutput { return o.ApplyT(func(v *DataAccessorDocumentAttribute) interface{} { if v == nil { @@ -2096,7 +2158,9 @@ func (o DataAccessorDocumentAttributeValue3PropertiesPtrOutput) DateValue() pulu } type DataAccessorTag struct { - Key string `pulumi:"key"` + // The key for the tag. Keys are not case sensitive and must be unique for the Amazon Q Business application or data source. + Key string `pulumi:"key"` + // The value associated with the tag. The value may be an empty string but it can't be null. Value string `pulumi:"value"` } @@ -3404,6 +3468,7 @@ func (o DataSourceHookConfigurationPtrOutput) S3BucketName() pulumi.StringPtrOut } type DataSourceImageExtractionConfiguration struct { + // Specify whether to extract semantic meaning from images and visuals from documents. ImageExtractionStatus DataSourceImageExtractionStatus `pulumi:"imageExtractionStatus"` } @@ -3419,6 +3484,7 @@ type DataSourceImageExtractionConfigurationInput interface { } type DataSourceImageExtractionConfigurationArgs struct { + // Specify whether to extract semantic meaning from images and visuals from documents. ImageExtractionStatus DataSourceImageExtractionStatusInput `pulumi:"imageExtractionStatus"` } @@ -3499,6 +3565,7 @@ func (o DataSourceImageExtractionConfigurationOutput) ToDataSourceImageExtractio }).(DataSourceImageExtractionConfigurationPtrOutput) } +// Specify whether to extract semantic meaning from images and visuals from documents. func (o DataSourceImageExtractionConfigurationOutput) ImageExtractionStatus() DataSourceImageExtractionStatusOutput { return o.ApplyT(func(v DataSourceImageExtractionConfiguration) DataSourceImageExtractionStatus { return v.ImageExtractionStatus @@ -3529,6 +3596,7 @@ func (o DataSourceImageExtractionConfigurationPtrOutput) Elem() DataSourceImageE }).(DataSourceImageExtractionConfigurationOutput) } +// Specify whether to extract semantic meaning from images and visuals from documents. func (o DataSourceImageExtractionConfigurationPtrOutput) ImageExtractionStatus() DataSourceImageExtractionStatusPtrOutput { return o.ApplyT(func(v *DataSourceImageExtractionConfiguration) *DataSourceImageExtractionStatus { if v == nil { @@ -3660,6 +3728,7 @@ func (o DataSourceInlineDocumentEnrichmentConfigurationArrayOutput) Index(i pulu } type DataSourceMediaExtractionConfiguration struct { + // The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . ImageExtractionConfiguration *DataSourceImageExtractionConfiguration `pulumi:"imageExtractionConfiguration"` } @@ -3675,6 +3744,7 @@ type DataSourceMediaExtractionConfigurationInput interface { } type DataSourceMediaExtractionConfigurationArgs struct { + // The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . ImageExtractionConfiguration DataSourceImageExtractionConfigurationPtrInput `pulumi:"imageExtractionConfiguration"` } @@ -3755,6 +3825,7 @@ func (o DataSourceMediaExtractionConfigurationOutput) ToDataSourceMediaExtractio }).(DataSourceMediaExtractionConfigurationPtrOutput) } +// The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . func (o DataSourceMediaExtractionConfigurationOutput) ImageExtractionConfiguration() DataSourceImageExtractionConfigurationPtrOutput { return o.ApplyT(func(v DataSourceMediaExtractionConfiguration) *DataSourceImageExtractionConfiguration { return v.ImageExtractionConfiguration @@ -3785,6 +3856,7 @@ func (o DataSourceMediaExtractionConfigurationPtrOutput) Elem() DataSourceMediaE }).(DataSourceMediaExtractionConfigurationOutput) } +// The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . func (o DataSourceMediaExtractionConfigurationPtrOutput) ImageExtractionConfiguration() DataSourceImageExtractionConfigurationPtrOutput { return o.ApplyT(func(v *DataSourceMediaExtractionConfiguration) *DataSourceImageExtractionConfiguration { if v == nil { @@ -5826,10 +5898,14 @@ type RetrieverTag struct { } type WebExperienceCustomizationConfiguration struct { + // Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. CustomCssUrl *string `pulumi:"customCssUrl"` - FaviconUrl *string `pulumi:"faviconUrl"` - FontUrl *string `pulumi:"fontUrl"` - LogoUrl *string `pulumi:"logoUrl"` + // Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + FaviconUrl *string `pulumi:"faviconUrl"` + // Provides the URL where the custom font file is hosted for an Amazon Q web experience. + FontUrl *string `pulumi:"fontUrl"` + // Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + LogoUrl *string `pulumi:"logoUrl"` } // WebExperienceCustomizationConfigurationInput is an input type that accepts WebExperienceCustomizationConfigurationArgs and WebExperienceCustomizationConfigurationOutput values. @@ -5844,10 +5920,14 @@ type WebExperienceCustomizationConfigurationInput interface { } type WebExperienceCustomizationConfigurationArgs struct { + // Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. CustomCssUrl pulumi.StringPtrInput `pulumi:"customCssUrl"` - FaviconUrl pulumi.StringPtrInput `pulumi:"faviconUrl"` - FontUrl pulumi.StringPtrInput `pulumi:"fontUrl"` - LogoUrl pulumi.StringPtrInput `pulumi:"logoUrl"` + // Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + FaviconUrl pulumi.StringPtrInput `pulumi:"faviconUrl"` + // Provides the URL where the custom font file is hosted for an Amazon Q web experience. + FontUrl pulumi.StringPtrInput `pulumi:"fontUrl"` + // Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + LogoUrl pulumi.StringPtrInput `pulumi:"logoUrl"` } func (WebExperienceCustomizationConfigurationArgs) ElementType() reflect.Type { @@ -5927,18 +6007,22 @@ func (o WebExperienceCustomizationConfigurationOutput) ToWebExperienceCustomizat }).(WebExperienceCustomizationConfigurationPtrOutput) } +// Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationOutput) CustomCssUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v WebExperienceCustomizationConfiguration) *string { return v.CustomCssUrl }).(pulumi.StringPtrOutput) } +// Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationOutput) FaviconUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v WebExperienceCustomizationConfiguration) *string { return v.FaviconUrl }).(pulumi.StringPtrOutput) } +// Provides the URL where the custom font file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationOutput) FontUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v WebExperienceCustomizationConfiguration) *string { return v.FontUrl }).(pulumi.StringPtrOutput) } +// Provides the URL where the custom logo file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationOutput) LogoUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v WebExperienceCustomizationConfiguration) *string { return v.LogoUrl }).(pulumi.StringPtrOutput) } @@ -5967,6 +6051,7 @@ func (o WebExperienceCustomizationConfigurationPtrOutput) Elem() WebExperienceCu }).(WebExperienceCustomizationConfigurationOutput) } +// Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationPtrOutput) CustomCssUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v *WebExperienceCustomizationConfiguration) *string { if v == nil { @@ -5976,6 +6061,7 @@ func (o WebExperienceCustomizationConfigurationPtrOutput) CustomCssUrl() pulumi. }).(pulumi.StringPtrOutput) } +// Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationPtrOutput) FaviconUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v *WebExperienceCustomizationConfiguration) *string { if v == nil { @@ -5985,6 +6071,7 @@ func (o WebExperienceCustomizationConfigurationPtrOutput) FaviconUrl() pulumi.St }).(pulumi.StringPtrOutput) } +// Provides the URL where the custom font file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationPtrOutput) FontUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v *WebExperienceCustomizationConfiguration) *string { if v == nil { @@ -5994,6 +6081,7 @@ func (o WebExperienceCustomizationConfigurationPtrOutput) FontUrl() pulumi.Strin }).(pulumi.StringPtrOutput) } +// Provides the URL where the custom logo file is hosted for an Amazon Q web experience. func (o WebExperienceCustomizationConfigurationPtrOutput) LogoUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v *WebExperienceCustomizationConfiguration) *string { if v == nil { diff --git a/sdk/go/aws/qbusiness/webExperience.go b/sdk/go/aws/qbusiness/webExperience.go index b8d2841b2f..1c22687502 100644 --- a/sdk/go/aws/qbusiness/webExperience.go +++ b/sdk/go/aws/qbusiness/webExperience.go @@ -20,7 +20,8 @@ type WebExperience struct { // The identifier of the Amazon Q Business web experience. ApplicationId pulumi.StringOutput `pulumi:"applicationId"` // The Unix timestamp when the Amazon Q Business application was last updated. - CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + // Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. CustomizationConfiguration WebExperienceCustomizationConfigurationPtrOutput `pulumi:"customizationConfiguration"` // The endpoint URLs for your Amazon Q Business web experience. The URLs are unique and fully hosted by AWS . DefaultEndpoint pulumi.StringOutput `pulumi:"defaultEndpoint"` @@ -102,7 +103,8 @@ func (WebExperienceState) ElementType() reflect.Type { type webExperienceArgs struct { // The identifier of the Amazon Q Business web experience. - ApplicationId string `pulumi:"applicationId"` + ApplicationId string `pulumi:"applicationId"` + // Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. CustomizationConfiguration *WebExperienceCustomizationConfiguration `pulumi:"customizationConfiguration"` // Provides information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience. IdentityProviderConfiguration interface{} `pulumi:"identityProviderConfiguration"` @@ -129,7 +131,8 @@ type webExperienceArgs struct { // The set of arguments for constructing a WebExperience resource. type WebExperienceArgs struct { // The identifier of the Amazon Q Business web experience. - ApplicationId pulumi.StringInput + ApplicationId pulumi.StringInput + // Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. CustomizationConfiguration WebExperienceCustomizationConfigurationPtrInput // Provides information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience. IdentityProviderConfiguration pulumi.Input @@ -200,6 +203,7 @@ func (o WebExperienceOutput) CreatedAt() pulumi.StringOutput { return o.ApplyT(func(v *WebExperience) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) } +// Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. func (o WebExperienceOutput) CustomizationConfiguration() WebExperienceCustomizationConfigurationPtrOutput { return o.ApplyT(func(v *WebExperience) WebExperienceCustomizationConfigurationPtrOutput { return v.CustomizationConfiguration diff --git a/sdk/go/aws/quicksight/dataSet.go b/sdk/go/aws/quicksight/dataSet.go index f6e73d82fc..dce6f073cc 100644 --- a/sdk/go/aws/quicksight/dataSet.go +++ b/sdk/go/aws/quicksight/dataSet.go @@ -55,7 +55,8 @@ type DataSet struct { Name pulumi.StringPtrOutput `pulumi:"name"` //

The list of columns after all transforms. These columns are available in templates, // analyses, and dashboards.

- OutputColumns DataSetOutputColumnArrayOutput `pulumi:"outputColumns"` + OutputColumns DataSetOutputColumnArrayOutput `pulumi:"outputColumns"` + PerformanceConfiguration DataSetPerformanceConfigurationPtrOutput `pulumi:"performanceConfiguration"` //

A list of resource permissions on the dataset.

Permissions DataSetResourcePermissionArrayOutput `pulumi:"permissions"` // Declares the physical tables that are available in the underlying data sources. @@ -140,7 +141,8 @@ type dataSetArgs struct { // Configures the combination and transformation of the data from the physical tables. LogicalTableMap map[string]DataSetLogicalTable `pulumi:"logicalTableMap"` //

The display name for the dataset.

- Name *string `pulumi:"name"` + Name *string `pulumi:"name"` + PerformanceConfiguration *DataSetPerformanceConfiguration `pulumi:"performanceConfiguration"` //

A list of resource permissions on the dataset.

Permissions []DataSetResourcePermission `pulumi:"permissions"` // Declares the physical tables that are available in the underlying data sources. @@ -182,7 +184,8 @@ type DataSetArgs struct { // Configures the combination and transformation of the data from the physical tables. LogicalTableMap DataSetLogicalTableMapInput //

The display name for the dataset.

- Name pulumi.StringPtrInput + Name pulumi.StringPtrInput + PerformanceConfiguration DataSetPerformanceConfigurationPtrInput //

A list of resource permissions on the dataset.

Permissions DataSetResourcePermissionArrayInput // Declares the physical tables that are available in the underlying data sources. @@ -329,6 +332,10 @@ func (o DataSetOutput) OutputColumns() DataSetOutputColumnArrayOutput { return o.ApplyT(func(v *DataSet) DataSetOutputColumnArrayOutput { return v.OutputColumns }).(DataSetOutputColumnArrayOutput) } +func (o DataSetOutput) PerformanceConfiguration() DataSetPerformanceConfigurationPtrOutput { + return o.ApplyT(func(v *DataSet) DataSetPerformanceConfigurationPtrOutput { return v.PerformanceConfiguration }).(DataSetPerformanceConfigurationPtrOutput) +} + //

A list of resource permissions on the dataset.

func (o DataSetOutput) Permissions() DataSetResourcePermissionArrayOutput { return o.ApplyT(func(v *DataSet) DataSetResourcePermissionArrayOutput { return v.Permissions }).(DataSetResourcePermissionArrayOutput) diff --git a/sdk/go/aws/quicksight/getDataSet.go b/sdk/go/aws/quicksight/getDataSet.go index 822bf886a8..e58ca76eed 100644 --- a/sdk/go/aws/quicksight/getDataSet.go +++ b/sdk/go/aws/quicksight/getDataSet.go @@ -60,7 +60,8 @@ type LookupDataSetResult struct { Name *string `pulumi:"name"` //

The list of columns after all transforms. These columns are available in templates, // analyses, and dashboards.

- OutputColumns []DataSetOutputColumn `pulumi:"outputColumns"` + OutputColumns []DataSetOutputColumn `pulumi:"outputColumns"` + PerformanceConfiguration *DataSetPerformanceConfiguration `pulumi:"performanceConfiguration"` //

A list of resource permissions on the dataset.

Permissions []DataSetResourcePermission `pulumi:"permissions"` // Declares the physical tables that are available in the underlying data sources. @@ -179,6 +180,10 @@ func (o LookupDataSetResultOutput) OutputColumns() DataSetOutputColumnArrayOutpu return o.ApplyT(func(v LookupDataSetResult) []DataSetOutputColumn { return v.OutputColumns }).(DataSetOutputColumnArrayOutput) } +func (o LookupDataSetResultOutput) PerformanceConfiguration() DataSetPerformanceConfigurationPtrOutput { + return o.ApplyT(func(v LookupDataSetResult) *DataSetPerformanceConfiguration { return v.PerformanceConfiguration }).(DataSetPerformanceConfigurationPtrOutput) +} + //

A list of resource permissions on the dataset.

func (o LookupDataSetResultOutput) Permissions() DataSetResourcePermissionArrayOutput { return o.ApplyT(func(v LookupDataSetResult) []DataSetResourcePermission { return v.Permissions }).(DataSetResourcePermissionArrayOutput) diff --git a/sdk/go/aws/quicksight/pulumiTypes2.go b/sdk/go/aws/quicksight/pulumiTypes2.go index 151878773e..46aa2cf971 100644 --- a/sdk/go/aws/quicksight/pulumiTypes2.go +++ b/sdk/go/aws/quicksight/pulumiTypes2.go @@ -23288,6 +23288,139 @@ func (o DataSetOverrideDatasetParameterOperationPtrOutput) ParameterName() pulum }).(pulumi.StringPtrOutput) } +type DataSetPerformanceConfiguration struct { + UniqueKeys []DataSetUniqueKey `pulumi:"uniqueKeys"` +} + +// DataSetPerformanceConfigurationInput is an input type that accepts DataSetPerformanceConfigurationArgs and DataSetPerformanceConfigurationOutput values. +// You can construct a concrete instance of `DataSetPerformanceConfigurationInput` via: +// +// DataSetPerformanceConfigurationArgs{...} +type DataSetPerformanceConfigurationInput interface { + pulumi.Input + + ToDataSetPerformanceConfigurationOutput() DataSetPerformanceConfigurationOutput + ToDataSetPerformanceConfigurationOutputWithContext(context.Context) DataSetPerformanceConfigurationOutput +} + +type DataSetPerformanceConfigurationArgs struct { + UniqueKeys DataSetUniqueKeyArrayInput `pulumi:"uniqueKeys"` +} + +func (DataSetPerformanceConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DataSetPerformanceConfiguration)(nil)).Elem() +} + +func (i DataSetPerformanceConfigurationArgs) ToDataSetPerformanceConfigurationOutput() DataSetPerformanceConfigurationOutput { + return i.ToDataSetPerformanceConfigurationOutputWithContext(context.Background()) +} + +func (i DataSetPerformanceConfigurationArgs) ToDataSetPerformanceConfigurationOutputWithContext(ctx context.Context) DataSetPerformanceConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSetPerformanceConfigurationOutput) +} + +func (i DataSetPerformanceConfigurationArgs) ToDataSetPerformanceConfigurationPtrOutput() DataSetPerformanceConfigurationPtrOutput { + return i.ToDataSetPerformanceConfigurationPtrOutputWithContext(context.Background()) +} + +func (i DataSetPerformanceConfigurationArgs) ToDataSetPerformanceConfigurationPtrOutputWithContext(ctx context.Context) DataSetPerformanceConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSetPerformanceConfigurationOutput).ToDataSetPerformanceConfigurationPtrOutputWithContext(ctx) +} + +// DataSetPerformanceConfigurationPtrInput is an input type that accepts DataSetPerformanceConfigurationArgs, DataSetPerformanceConfigurationPtr and DataSetPerformanceConfigurationPtrOutput values. +// You can construct a concrete instance of `DataSetPerformanceConfigurationPtrInput` via: +// +// DataSetPerformanceConfigurationArgs{...} +// +// or: +// +// nil +type DataSetPerformanceConfigurationPtrInput interface { + pulumi.Input + + ToDataSetPerformanceConfigurationPtrOutput() DataSetPerformanceConfigurationPtrOutput + ToDataSetPerformanceConfigurationPtrOutputWithContext(context.Context) DataSetPerformanceConfigurationPtrOutput +} + +type dataSetPerformanceConfigurationPtrType DataSetPerformanceConfigurationArgs + +func DataSetPerformanceConfigurationPtr(v *DataSetPerformanceConfigurationArgs) DataSetPerformanceConfigurationPtrInput { + return (*dataSetPerformanceConfigurationPtrType)(v) +} + +func (*dataSetPerformanceConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DataSetPerformanceConfiguration)(nil)).Elem() +} + +func (i *dataSetPerformanceConfigurationPtrType) ToDataSetPerformanceConfigurationPtrOutput() DataSetPerformanceConfigurationPtrOutput { + return i.ToDataSetPerformanceConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *dataSetPerformanceConfigurationPtrType) ToDataSetPerformanceConfigurationPtrOutputWithContext(ctx context.Context) DataSetPerformanceConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSetPerformanceConfigurationPtrOutput) +} + +type DataSetPerformanceConfigurationOutput struct{ *pulumi.OutputState } + +func (DataSetPerformanceConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DataSetPerformanceConfiguration)(nil)).Elem() +} + +func (o DataSetPerformanceConfigurationOutput) ToDataSetPerformanceConfigurationOutput() DataSetPerformanceConfigurationOutput { + return o +} + +func (o DataSetPerformanceConfigurationOutput) ToDataSetPerformanceConfigurationOutputWithContext(ctx context.Context) DataSetPerformanceConfigurationOutput { + return o +} + +func (o DataSetPerformanceConfigurationOutput) ToDataSetPerformanceConfigurationPtrOutput() DataSetPerformanceConfigurationPtrOutput { + return o.ToDataSetPerformanceConfigurationPtrOutputWithContext(context.Background()) +} + +func (o DataSetPerformanceConfigurationOutput) ToDataSetPerformanceConfigurationPtrOutputWithContext(ctx context.Context) DataSetPerformanceConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DataSetPerformanceConfiguration) *DataSetPerformanceConfiguration { + return &v + }).(DataSetPerformanceConfigurationPtrOutput) +} + +func (o DataSetPerformanceConfigurationOutput) UniqueKeys() DataSetUniqueKeyArrayOutput { + return o.ApplyT(func(v DataSetPerformanceConfiguration) []DataSetUniqueKey { return v.UniqueKeys }).(DataSetUniqueKeyArrayOutput) +} + +type DataSetPerformanceConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (DataSetPerformanceConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DataSetPerformanceConfiguration)(nil)).Elem() +} + +func (o DataSetPerformanceConfigurationPtrOutput) ToDataSetPerformanceConfigurationPtrOutput() DataSetPerformanceConfigurationPtrOutput { + return o +} + +func (o DataSetPerformanceConfigurationPtrOutput) ToDataSetPerformanceConfigurationPtrOutputWithContext(ctx context.Context) DataSetPerformanceConfigurationPtrOutput { + return o +} + +func (o DataSetPerformanceConfigurationPtrOutput) Elem() DataSetPerformanceConfigurationOutput { + return o.ApplyT(func(v *DataSetPerformanceConfiguration) DataSetPerformanceConfiguration { + if v != nil { + return *v + } + var ret DataSetPerformanceConfiguration + return ret + }).(DataSetPerformanceConfigurationOutput) +} + +func (o DataSetPerformanceConfigurationPtrOutput) UniqueKeys() DataSetUniqueKeyArrayOutput { + return o.ApplyT(func(v *DataSetPerformanceConfiguration) []DataSetUniqueKey { + if v == nil { + return nil + } + return v.UniqueKeys + }).(DataSetUniqueKeyArrayOutput) +} + //

A view of a data source that contains information about the shape of the data in the // // underlying source. This is a variant type structure. For this structure to be valid, @@ -25801,6 +25934,100 @@ func (o DataSetTransformOperationArrayOutput) Index(i pulumi.IntInput) DataSetTr }).(DataSetTransformOperationOutput) } +type DataSetUniqueKey struct { + ColumnNames []string `pulumi:"columnNames"` +} + +// DataSetUniqueKeyInput is an input type that accepts DataSetUniqueKeyArgs and DataSetUniqueKeyOutput values. +// You can construct a concrete instance of `DataSetUniqueKeyInput` via: +// +// DataSetUniqueKeyArgs{...} +type DataSetUniqueKeyInput interface { + pulumi.Input + + ToDataSetUniqueKeyOutput() DataSetUniqueKeyOutput + ToDataSetUniqueKeyOutputWithContext(context.Context) DataSetUniqueKeyOutput +} + +type DataSetUniqueKeyArgs struct { + ColumnNames pulumi.StringArrayInput `pulumi:"columnNames"` +} + +func (DataSetUniqueKeyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DataSetUniqueKey)(nil)).Elem() +} + +func (i DataSetUniqueKeyArgs) ToDataSetUniqueKeyOutput() DataSetUniqueKeyOutput { + return i.ToDataSetUniqueKeyOutputWithContext(context.Background()) +} + +func (i DataSetUniqueKeyArgs) ToDataSetUniqueKeyOutputWithContext(ctx context.Context) DataSetUniqueKeyOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSetUniqueKeyOutput) +} + +// DataSetUniqueKeyArrayInput is an input type that accepts DataSetUniqueKeyArray and DataSetUniqueKeyArrayOutput values. +// You can construct a concrete instance of `DataSetUniqueKeyArrayInput` via: +// +// DataSetUniqueKeyArray{ DataSetUniqueKeyArgs{...} } +type DataSetUniqueKeyArrayInput interface { + pulumi.Input + + ToDataSetUniqueKeyArrayOutput() DataSetUniqueKeyArrayOutput + ToDataSetUniqueKeyArrayOutputWithContext(context.Context) DataSetUniqueKeyArrayOutput +} + +type DataSetUniqueKeyArray []DataSetUniqueKeyInput + +func (DataSetUniqueKeyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DataSetUniqueKey)(nil)).Elem() +} + +func (i DataSetUniqueKeyArray) ToDataSetUniqueKeyArrayOutput() DataSetUniqueKeyArrayOutput { + return i.ToDataSetUniqueKeyArrayOutputWithContext(context.Background()) +} + +func (i DataSetUniqueKeyArray) ToDataSetUniqueKeyArrayOutputWithContext(ctx context.Context) DataSetUniqueKeyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSetUniqueKeyArrayOutput) +} + +type DataSetUniqueKeyOutput struct{ *pulumi.OutputState } + +func (DataSetUniqueKeyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DataSetUniqueKey)(nil)).Elem() +} + +func (o DataSetUniqueKeyOutput) ToDataSetUniqueKeyOutput() DataSetUniqueKeyOutput { + return o +} + +func (o DataSetUniqueKeyOutput) ToDataSetUniqueKeyOutputWithContext(ctx context.Context) DataSetUniqueKeyOutput { + return o +} + +func (o DataSetUniqueKeyOutput) ColumnNames() pulumi.StringArrayOutput { + return o.ApplyT(func(v DataSetUniqueKey) []string { return v.ColumnNames }).(pulumi.StringArrayOutput) +} + +type DataSetUniqueKeyArrayOutput struct{ *pulumi.OutputState } + +func (DataSetUniqueKeyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DataSetUniqueKey)(nil)).Elem() +} + +func (o DataSetUniqueKeyArrayOutput) ToDataSetUniqueKeyArrayOutput() DataSetUniqueKeyArrayOutput { + return o +} + +func (o DataSetUniqueKeyArrayOutput) ToDataSetUniqueKeyArrayOutputWithContext(ctx context.Context) DataSetUniqueKeyArrayOutput { + return o +} + +func (o DataSetUniqueKeyArrayOutput) Index(i pulumi.IntInput) DataSetUniqueKeyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DataSetUniqueKey { + return vs[0].([]DataSetUniqueKey)[vs[1].(int)] + }).(DataSetUniqueKeyOutput) +} + //

A transform operation that removes tags associated with a column.

type DataSetUntagColumnOperation struct { //

The column that this operation acts on.

@@ -85790,533 +86017,6 @@ func (o TemplateParameterDeclarationArrayOutput) Index(i pulumi.IntInput) Templa }).(TemplateParameterDeclarationOutput) } -type TemplateParameterDropDownControl struct { - // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. - CascadingControlConfiguration *TemplateCascadingControlConfiguration `pulumi:"cascadingControlConfiguration"` - // The visibility configuration of the Apply button on a `ParameterDropDownControl` . - CommitMode *TemplateCommitMode `pulumi:"commitMode"` - // The display options of a control. - DisplayOptions *TemplateDropDownControlDisplayOptions `pulumi:"displayOptions"` - // The ID of the `ParameterDropDownControl` . - ParameterControlId string `pulumi:"parameterControlId"` - // A list of selectable values that are used in a control. - SelectableValues *TemplateParameterSelectableValues `pulumi:"selectableValues"` - // The source parameter name of the `ParameterDropDownControl` . - SourceParameterName string `pulumi:"sourceParameterName"` - // The title of the `ParameterDropDownControl` . - Title string `pulumi:"title"` - // The type parameter name of the `ParameterDropDownControl` . - Type *TemplateSheetControlListType `pulumi:"type"` -} - -// TemplateParameterDropDownControlInput is an input type that accepts TemplateParameterDropDownControlArgs and TemplateParameterDropDownControlOutput values. -// You can construct a concrete instance of `TemplateParameterDropDownControlInput` via: -// -// TemplateParameterDropDownControlArgs{...} -type TemplateParameterDropDownControlInput interface { - pulumi.Input - - ToTemplateParameterDropDownControlOutput() TemplateParameterDropDownControlOutput - ToTemplateParameterDropDownControlOutputWithContext(context.Context) TemplateParameterDropDownControlOutput -} - -type TemplateParameterDropDownControlArgs struct { - // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. - CascadingControlConfiguration TemplateCascadingControlConfigurationPtrInput `pulumi:"cascadingControlConfiguration"` - // The visibility configuration of the Apply button on a `ParameterDropDownControl` . - CommitMode TemplateCommitModePtrInput `pulumi:"commitMode"` - // The display options of a control. - DisplayOptions TemplateDropDownControlDisplayOptionsPtrInput `pulumi:"displayOptions"` - // The ID of the `ParameterDropDownControl` . - ParameterControlId pulumi.StringInput `pulumi:"parameterControlId"` - // A list of selectable values that are used in a control. - SelectableValues TemplateParameterSelectableValuesPtrInput `pulumi:"selectableValues"` - // The source parameter name of the `ParameterDropDownControl` . - SourceParameterName pulumi.StringInput `pulumi:"sourceParameterName"` - // The title of the `ParameterDropDownControl` . - Title pulumi.StringInput `pulumi:"title"` - // The type parameter name of the `ParameterDropDownControl` . - Type TemplateSheetControlListTypePtrInput `pulumi:"type"` -} - -func (TemplateParameterDropDownControlArgs) ElementType() reflect.Type { - return reflect.TypeOf((*TemplateParameterDropDownControl)(nil)).Elem() -} - -func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlOutput() TemplateParameterDropDownControlOutput { - return i.ToTemplateParameterDropDownControlOutputWithContext(context.Background()) -} - -func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlOutputWithContext(ctx context.Context) TemplateParameterDropDownControlOutput { - return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterDropDownControlOutput) -} - -func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { - return i.ToTemplateParameterDropDownControlPtrOutputWithContext(context.Background()) -} - -func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterDropDownControlOutput).ToTemplateParameterDropDownControlPtrOutputWithContext(ctx) -} - -// TemplateParameterDropDownControlPtrInput is an input type that accepts TemplateParameterDropDownControlArgs, TemplateParameterDropDownControlPtr and TemplateParameterDropDownControlPtrOutput values. -// You can construct a concrete instance of `TemplateParameterDropDownControlPtrInput` via: -// -// TemplateParameterDropDownControlArgs{...} -// -// or: -// -// nil -type TemplateParameterDropDownControlPtrInput interface { - pulumi.Input - - ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput - ToTemplateParameterDropDownControlPtrOutputWithContext(context.Context) TemplateParameterDropDownControlPtrOutput -} - -type templateParameterDropDownControlPtrType TemplateParameterDropDownControlArgs - -func TemplateParameterDropDownControlPtr(v *TemplateParameterDropDownControlArgs) TemplateParameterDropDownControlPtrInput { - return (*templateParameterDropDownControlPtrType)(v) -} - -func (*templateParameterDropDownControlPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**TemplateParameterDropDownControl)(nil)).Elem() -} - -func (i *templateParameterDropDownControlPtrType) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { - return i.ToTemplateParameterDropDownControlPtrOutputWithContext(context.Background()) -} - -func (i *templateParameterDropDownControlPtrType) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterDropDownControlPtrOutput) -} - -type TemplateParameterDropDownControlOutput struct{ *pulumi.OutputState } - -func (TemplateParameterDropDownControlOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TemplateParameterDropDownControl)(nil)).Elem() -} - -func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlOutput() TemplateParameterDropDownControlOutput { - return o -} - -func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlOutputWithContext(ctx context.Context) TemplateParameterDropDownControlOutput { - return o -} - -func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { - return o.ToTemplateParameterDropDownControlPtrOutputWithContext(context.Background()) -} - -func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v TemplateParameterDropDownControl) *TemplateParameterDropDownControl { - return &v - }).(TemplateParameterDropDownControlPtrOutput) -} - -// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. -func (o TemplateParameterDropDownControlOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateCascadingControlConfiguration { - return v.CascadingControlConfiguration - }).(TemplateCascadingControlConfigurationPtrOutput) -} - -// The visibility configuration of the Apply button on a `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlOutput) CommitMode() TemplateCommitModePtrOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateCommitMode { return v.CommitMode }).(TemplateCommitModePtrOutput) -} - -// The display options of a control. -func (o TemplateParameterDropDownControlOutput) DisplayOptions() TemplateDropDownControlDisplayOptionsPtrOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateDropDownControlDisplayOptions { - return v.DisplayOptions - }).(TemplateDropDownControlDisplayOptionsPtrOutput) -} - -// The ID of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlOutput) ParameterControlId() pulumi.StringOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) string { return v.ParameterControlId }).(pulumi.StringOutput) -} - -// A list of selectable values that are used in a control. -func (o TemplateParameterDropDownControlOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateParameterSelectableValues { return v.SelectableValues }).(TemplateParameterSelectableValuesPtrOutput) -} - -// The source parameter name of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlOutput) SourceParameterName() pulumi.StringOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) string { return v.SourceParameterName }).(pulumi.StringOutput) -} - -// The title of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlOutput) Title() pulumi.StringOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) string { return v.Title }).(pulumi.StringOutput) -} - -// The type parameter name of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlOutput) Type() TemplateSheetControlListTypePtrOutput { - return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateSheetControlListType { return v.Type }).(TemplateSheetControlListTypePtrOutput) -} - -type TemplateParameterDropDownControlPtrOutput struct{ *pulumi.OutputState } - -func (TemplateParameterDropDownControlPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**TemplateParameterDropDownControl)(nil)).Elem() -} - -func (o TemplateParameterDropDownControlPtrOutput) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { - return o -} - -func (o TemplateParameterDropDownControlPtrOutput) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { - return o -} - -func (o TemplateParameterDropDownControlPtrOutput) Elem() TemplateParameterDropDownControlOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) TemplateParameterDropDownControl { - if v != nil { - return *v - } - var ret TemplateParameterDropDownControl - return ret - }).(TemplateParameterDropDownControlOutput) -} - -// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. -func (o TemplateParameterDropDownControlPtrOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateCascadingControlConfiguration { - if v == nil { - return nil - } - return v.CascadingControlConfiguration - }).(TemplateCascadingControlConfigurationPtrOutput) -} - -// The visibility configuration of the Apply button on a `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlPtrOutput) CommitMode() TemplateCommitModePtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateCommitMode { - if v == nil { - return nil - } - return v.CommitMode - }).(TemplateCommitModePtrOutput) -} - -// The display options of a control. -func (o TemplateParameterDropDownControlPtrOutput) DisplayOptions() TemplateDropDownControlDisplayOptionsPtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateDropDownControlDisplayOptions { - if v == nil { - return nil - } - return v.DisplayOptions - }).(TemplateDropDownControlDisplayOptionsPtrOutput) -} - -// The ID of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlPtrOutput) ParameterControlId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *string { - if v == nil { - return nil - } - return &v.ParameterControlId - }).(pulumi.StringPtrOutput) -} - -// A list of selectable values that are used in a control. -func (o TemplateParameterDropDownControlPtrOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateParameterSelectableValues { - if v == nil { - return nil - } - return v.SelectableValues - }).(TemplateParameterSelectableValuesPtrOutput) -} - -// The source parameter name of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlPtrOutput) SourceParameterName() pulumi.StringPtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *string { - if v == nil { - return nil - } - return &v.SourceParameterName - }).(pulumi.StringPtrOutput) -} - -// The title of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlPtrOutput) Title() pulumi.StringPtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *string { - if v == nil { - return nil - } - return &v.Title - }).(pulumi.StringPtrOutput) -} - -// The type parameter name of the `ParameterDropDownControl` . -func (o TemplateParameterDropDownControlPtrOutput) Type() TemplateSheetControlListTypePtrOutput { - return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateSheetControlListType { - if v == nil { - return nil - } - return v.Type - }).(TemplateSheetControlListTypePtrOutput) -} - -type TemplateParameterListControl struct { - // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. - CascadingControlConfiguration *TemplateCascadingControlConfiguration `pulumi:"cascadingControlConfiguration"` - // The display options of a control. - DisplayOptions *TemplateListControlDisplayOptions `pulumi:"displayOptions"` - // The ID of the `ParameterListControl` . - ParameterControlId string `pulumi:"parameterControlId"` - // A list of selectable values that are used in a control. - SelectableValues *TemplateParameterSelectableValues `pulumi:"selectableValues"` - // The source parameter name of the `ParameterListControl` . - SourceParameterName string `pulumi:"sourceParameterName"` - // The title of the `ParameterListControl` . - Title string `pulumi:"title"` - // The type of `ParameterListControl` . - Type *TemplateSheetControlListType `pulumi:"type"` -} - -// TemplateParameterListControlInput is an input type that accepts TemplateParameterListControlArgs and TemplateParameterListControlOutput values. -// You can construct a concrete instance of `TemplateParameterListControlInput` via: -// -// TemplateParameterListControlArgs{...} -type TemplateParameterListControlInput interface { - pulumi.Input - - ToTemplateParameterListControlOutput() TemplateParameterListControlOutput - ToTemplateParameterListControlOutputWithContext(context.Context) TemplateParameterListControlOutput -} - -type TemplateParameterListControlArgs struct { - // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. - CascadingControlConfiguration TemplateCascadingControlConfigurationPtrInput `pulumi:"cascadingControlConfiguration"` - // The display options of a control. - DisplayOptions TemplateListControlDisplayOptionsPtrInput `pulumi:"displayOptions"` - // The ID of the `ParameterListControl` . - ParameterControlId pulumi.StringInput `pulumi:"parameterControlId"` - // A list of selectable values that are used in a control. - SelectableValues TemplateParameterSelectableValuesPtrInput `pulumi:"selectableValues"` - // The source parameter name of the `ParameterListControl` . - SourceParameterName pulumi.StringInput `pulumi:"sourceParameterName"` - // The title of the `ParameterListControl` . - Title pulumi.StringInput `pulumi:"title"` - // The type of `ParameterListControl` . - Type TemplateSheetControlListTypePtrInput `pulumi:"type"` -} - -func (TemplateParameterListControlArgs) ElementType() reflect.Type { - return reflect.TypeOf((*TemplateParameterListControl)(nil)).Elem() -} - -func (i TemplateParameterListControlArgs) ToTemplateParameterListControlOutput() TemplateParameterListControlOutput { - return i.ToTemplateParameterListControlOutputWithContext(context.Background()) -} - -func (i TemplateParameterListControlArgs) ToTemplateParameterListControlOutputWithContext(ctx context.Context) TemplateParameterListControlOutput { - return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterListControlOutput) -} - -func (i TemplateParameterListControlArgs) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { - return i.ToTemplateParameterListControlPtrOutputWithContext(context.Background()) -} - -func (i TemplateParameterListControlArgs) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterListControlOutput).ToTemplateParameterListControlPtrOutputWithContext(ctx) -} - -// TemplateParameterListControlPtrInput is an input type that accepts TemplateParameterListControlArgs, TemplateParameterListControlPtr and TemplateParameterListControlPtrOutput values. -// You can construct a concrete instance of `TemplateParameterListControlPtrInput` via: -// -// TemplateParameterListControlArgs{...} -// -// or: -// -// nil -type TemplateParameterListControlPtrInput interface { - pulumi.Input - - ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput - ToTemplateParameterListControlPtrOutputWithContext(context.Context) TemplateParameterListControlPtrOutput -} - -type templateParameterListControlPtrType TemplateParameterListControlArgs - -func TemplateParameterListControlPtr(v *TemplateParameterListControlArgs) TemplateParameterListControlPtrInput { - return (*templateParameterListControlPtrType)(v) -} - -func (*templateParameterListControlPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**TemplateParameterListControl)(nil)).Elem() -} - -func (i *templateParameterListControlPtrType) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { - return i.ToTemplateParameterListControlPtrOutputWithContext(context.Background()) -} - -func (i *templateParameterListControlPtrType) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterListControlPtrOutput) -} - -type TemplateParameterListControlOutput struct{ *pulumi.OutputState } - -func (TemplateParameterListControlOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TemplateParameterListControl)(nil)).Elem() -} - -func (o TemplateParameterListControlOutput) ToTemplateParameterListControlOutput() TemplateParameterListControlOutput { - return o -} - -func (o TemplateParameterListControlOutput) ToTemplateParameterListControlOutputWithContext(ctx context.Context) TemplateParameterListControlOutput { - return o -} - -func (o TemplateParameterListControlOutput) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { - return o.ToTemplateParameterListControlPtrOutputWithContext(context.Background()) -} - -func (o TemplateParameterListControlOutput) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v TemplateParameterListControl) *TemplateParameterListControl { - return &v - }).(TemplateParameterListControlPtrOutput) -} - -// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. -func (o TemplateParameterListControlOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { - return o.ApplyT(func(v TemplateParameterListControl) *TemplateCascadingControlConfiguration { - return v.CascadingControlConfiguration - }).(TemplateCascadingControlConfigurationPtrOutput) -} - -// The display options of a control. -func (o TemplateParameterListControlOutput) DisplayOptions() TemplateListControlDisplayOptionsPtrOutput { - return o.ApplyT(func(v TemplateParameterListControl) *TemplateListControlDisplayOptions { return v.DisplayOptions }).(TemplateListControlDisplayOptionsPtrOutput) -} - -// The ID of the `ParameterListControl` . -func (o TemplateParameterListControlOutput) ParameterControlId() pulumi.StringOutput { - return o.ApplyT(func(v TemplateParameterListControl) string { return v.ParameterControlId }).(pulumi.StringOutput) -} - -// A list of selectable values that are used in a control. -func (o TemplateParameterListControlOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { - return o.ApplyT(func(v TemplateParameterListControl) *TemplateParameterSelectableValues { return v.SelectableValues }).(TemplateParameterSelectableValuesPtrOutput) -} - -// The source parameter name of the `ParameterListControl` . -func (o TemplateParameterListControlOutput) SourceParameterName() pulumi.StringOutput { - return o.ApplyT(func(v TemplateParameterListControl) string { return v.SourceParameterName }).(pulumi.StringOutput) -} - -// The title of the `ParameterListControl` . -func (o TemplateParameterListControlOutput) Title() pulumi.StringOutput { - return o.ApplyT(func(v TemplateParameterListControl) string { return v.Title }).(pulumi.StringOutput) -} - -// The type of `ParameterListControl` . -func (o TemplateParameterListControlOutput) Type() TemplateSheetControlListTypePtrOutput { - return o.ApplyT(func(v TemplateParameterListControl) *TemplateSheetControlListType { return v.Type }).(TemplateSheetControlListTypePtrOutput) -} - -type TemplateParameterListControlPtrOutput struct{ *pulumi.OutputState } - -func (TemplateParameterListControlPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**TemplateParameterListControl)(nil)).Elem() -} - -func (o TemplateParameterListControlPtrOutput) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { - return o -} - -func (o TemplateParameterListControlPtrOutput) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { - return o -} - -func (o TemplateParameterListControlPtrOutput) Elem() TemplateParameterListControlOutput { - return o.ApplyT(func(v *TemplateParameterListControl) TemplateParameterListControl { - if v != nil { - return *v - } - var ret TemplateParameterListControl - return ret - }).(TemplateParameterListControlOutput) -} - -// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. -func (o TemplateParameterListControlPtrOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { - return o.ApplyT(func(v *TemplateParameterListControl) *TemplateCascadingControlConfiguration { - if v == nil { - return nil - } - return v.CascadingControlConfiguration - }).(TemplateCascadingControlConfigurationPtrOutput) -} - -// The display options of a control. -func (o TemplateParameterListControlPtrOutput) DisplayOptions() TemplateListControlDisplayOptionsPtrOutput { - return o.ApplyT(func(v *TemplateParameterListControl) *TemplateListControlDisplayOptions { - if v == nil { - return nil - } - return v.DisplayOptions - }).(TemplateListControlDisplayOptionsPtrOutput) -} - -// The ID of the `ParameterListControl` . -func (o TemplateParameterListControlPtrOutput) ParameterControlId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *TemplateParameterListControl) *string { - if v == nil { - return nil - } - return &v.ParameterControlId - }).(pulumi.StringPtrOutput) -} - -// A list of selectable values that are used in a control. -func (o TemplateParameterListControlPtrOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { - return o.ApplyT(func(v *TemplateParameterListControl) *TemplateParameterSelectableValues { - if v == nil { - return nil - } - return v.SelectableValues - }).(TemplateParameterSelectableValuesPtrOutput) -} - -// The source parameter name of the `ParameterListControl` . -func (o TemplateParameterListControlPtrOutput) SourceParameterName() pulumi.StringPtrOutput { - return o.ApplyT(func(v *TemplateParameterListControl) *string { - if v == nil { - return nil - } - return &v.SourceParameterName - }).(pulumi.StringPtrOutput) -} - -// The title of the `ParameterListControl` . -func (o TemplateParameterListControlPtrOutput) Title() pulumi.StringPtrOutput { - return o.ApplyT(func(v *TemplateParameterListControl) *string { - if v == nil { - return nil - } - return &v.Title - }).(pulumi.StringPtrOutput) -} - -// The type of `ParameterListControl` . -func (o TemplateParameterListControlPtrOutput) Type() TemplateSheetControlListTypePtrOutput { - return o.ApplyT(func(v *TemplateParameterListControl) *TemplateSheetControlListType { - if v == nil { - return nil - } - return v.Type - }).(TemplateSheetControlListTypePtrOutput) -} - func init() { pulumi.RegisterInputType(reflect.TypeOf((*DashboardSheetLayoutElementMaximizationOptionInput)(nil)).Elem(), DashboardSheetLayoutElementMaximizationOptionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardSheetLayoutElementMaximizationOptionPtrInput)(nil)).Elem(), DashboardSheetLayoutElementMaximizationOptionArgs{}) @@ -86586,6 +86286,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DataSetNewDefaultValuesPtrInput)(nil)).Elem(), DataSetNewDefaultValuesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetOverrideDatasetParameterOperationInput)(nil)).Elem(), DataSetOverrideDatasetParameterOperationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetOverrideDatasetParameterOperationPtrInput)(nil)).Elem(), DataSetOverrideDatasetParameterOperationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataSetPerformanceConfigurationInput)(nil)).Elem(), DataSetPerformanceConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataSetPerformanceConfigurationPtrInput)(nil)).Elem(), DataSetPerformanceConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetPhysicalTableInput)(nil)).Elem(), DataSetPhysicalTableArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetPhysicalTableMapInput)(nil)).Elem(), DataSetPhysicalTableMap{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetProjectOperationInput)(nil)).Elem(), DataSetProjectOperationArgs{}) @@ -86616,6 +86318,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DataSetTagColumnOperationPtrInput)(nil)).Elem(), DataSetTagColumnOperationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetTransformOperationInput)(nil)).Elem(), DataSetTransformOperationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetTransformOperationArrayInput)(nil)).Elem(), DataSetTransformOperationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataSetUniqueKeyInput)(nil)).Elem(), DataSetUniqueKeyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataSetUniqueKeyArrayInput)(nil)).Elem(), DataSetUniqueKeyArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetUntagColumnOperationInput)(nil)).Elem(), DataSetUntagColumnOperationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetUntagColumnOperationPtrInput)(nil)).Elem(), DataSetUntagColumnOperationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSetUploadSettingsInput)(nil)).Elem(), DataSetUploadSettingsArgs{}) @@ -87298,10 +87002,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterDateTimePickerControlPtrInput)(nil)).Elem(), TemplateParameterDateTimePickerControlArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterDeclarationInput)(nil)).Elem(), TemplateParameterDeclarationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterDeclarationArrayInput)(nil)).Elem(), TemplateParameterDeclarationArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterDropDownControlInput)(nil)).Elem(), TemplateParameterDropDownControlArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterDropDownControlPtrInput)(nil)).Elem(), TemplateParameterDropDownControlArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterListControlInput)(nil)).Elem(), TemplateParameterListControlArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterListControlPtrInput)(nil)).Elem(), TemplateParameterListControlArgs{}) pulumi.RegisterOutputType(DashboardSheetLayoutElementMaximizationOptionOutput{}) pulumi.RegisterOutputType(DashboardSheetLayoutElementMaximizationOptionPtrOutput{}) pulumi.RegisterOutputType(DashboardSheetTextBoxOutput{}) @@ -87574,6 +87274,8 @@ func init() { pulumi.RegisterOutputType(DataSetOutputColumnArrayOutput{}) pulumi.RegisterOutputType(DataSetOverrideDatasetParameterOperationOutput{}) pulumi.RegisterOutputType(DataSetOverrideDatasetParameterOperationPtrOutput{}) + pulumi.RegisterOutputType(DataSetPerformanceConfigurationOutput{}) + pulumi.RegisterOutputType(DataSetPerformanceConfigurationPtrOutput{}) pulumi.RegisterOutputType(DataSetPhysicalTableOutput{}) pulumi.RegisterOutputType(DataSetPhysicalTableMapOutput{}) pulumi.RegisterOutputType(DataSetProjectOperationOutput{}) @@ -87604,6 +87306,8 @@ func init() { pulumi.RegisterOutputType(DataSetTagColumnOperationPtrOutput{}) pulumi.RegisterOutputType(DataSetTransformOperationOutput{}) pulumi.RegisterOutputType(DataSetTransformOperationArrayOutput{}) + pulumi.RegisterOutputType(DataSetUniqueKeyOutput{}) + pulumi.RegisterOutputType(DataSetUniqueKeyArrayOutput{}) pulumi.RegisterOutputType(DataSetUntagColumnOperationOutput{}) pulumi.RegisterOutputType(DataSetUntagColumnOperationPtrOutput{}) pulumi.RegisterOutputType(DataSetUploadSettingsOutput{}) @@ -88290,8 +87994,4 @@ func init() { pulumi.RegisterOutputType(TemplateParameterDateTimePickerControlPtrOutput{}) pulumi.RegisterOutputType(TemplateParameterDeclarationOutput{}) pulumi.RegisterOutputType(TemplateParameterDeclarationArrayOutput{}) - pulumi.RegisterOutputType(TemplateParameterDropDownControlOutput{}) - pulumi.RegisterOutputType(TemplateParameterDropDownControlPtrOutput{}) - pulumi.RegisterOutputType(TemplateParameterListControlOutput{}) - pulumi.RegisterOutputType(TemplateParameterListControlPtrOutput{}) } diff --git a/sdk/go/aws/quicksight/pulumiTypes3.go b/sdk/go/aws/quicksight/pulumiTypes3.go index 909ab9df99..daefbb7d86 100644 --- a/sdk/go/aws/quicksight/pulumiTypes3.go +++ b/sdk/go/aws/quicksight/pulumiTypes3.go @@ -13,6 +13,533 @@ import ( var _ = internal.GetEnvOrDefault +type TemplateParameterDropDownControl struct { + // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. + CascadingControlConfiguration *TemplateCascadingControlConfiguration `pulumi:"cascadingControlConfiguration"` + // The visibility configuration of the Apply button on a `ParameterDropDownControl` . + CommitMode *TemplateCommitMode `pulumi:"commitMode"` + // The display options of a control. + DisplayOptions *TemplateDropDownControlDisplayOptions `pulumi:"displayOptions"` + // The ID of the `ParameterDropDownControl` . + ParameterControlId string `pulumi:"parameterControlId"` + // A list of selectable values that are used in a control. + SelectableValues *TemplateParameterSelectableValues `pulumi:"selectableValues"` + // The source parameter name of the `ParameterDropDownControl` . + SourceParameterName string `pulumi:"sourceParameterName"` + // The title of the `ParameterDropDownControl` . + Title string `pulumi:"title"` + // The type parameter name of the `ParameterDropDownControl` . + Type *TemplateSheetControlListType `pulumi:"type"` +} + +// TemplateParameterDropDownControlInput is an input type that accepts TemplateParameterDropDownControlArgs and TemplateParameterDropDownControlOutput values. +// You can construct a concrete instance of `TemplateParameterDropDownControlInput` via: +// +// TemplateParameterDropDownControlArgs{...} +type TemplateParameterDropDownControlInput interface { + pulumi.Input + + ToTemplateParameterDropDownControlOutput() TemplateParameterDropDownControlOutput + ToTemplateParameterDropDownControlOutputWithContext(context.Context) TemplateParameterDropDownControlOutput +} + +type TemplateParameterDropDownControlArgs struct { + // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. + CascadingControlConfiguration TemplateCascadingControlConfigurationPtrInput `pulumi:"cascadingControlConfiguration"` + // The visibility configuration of the Apply button on a `ParameterDropDownControl` . + CommitMode TemplateCommitModePtrInput `pulumi:"commitMode"` + // The display options of a control. + DisplayOptions TemplateDropDownControlDisplayOptionsPtrInput `pulumi:"displayOptions"` + // The ID of the `ParameterDropDownControl` . + ParameterControlId pulumi.StringInput `pulumi:"parameterControlId"` + // A list of selectable values that are used in a control. + SelectableValues TemplateParameterSelectableValuesPtrInput `pulumi:"selectableValues"` + // The source parameter name of the `ParameterDropDownControl` . + SourceParameterName pulumi.StringInput `pulumi:"sourceParameterName"` + // The title of the `ParameterDropDownControl` . + Title pulumi.StringInput `pulumi:"title"` + // The type parameter name of the `ParameterDropDownControl` . + Type TemplateSheetControlListTypePtrInput `pulumi:"type"` +} + +func (TemplateParameterDropDownControlArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateParameterDropDownControl)(nil)).Elem() +} + +func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlOutput() TemplateParameterDropDownControlOutput { + return i.ToTemplateParameterDropDownControlOutputWithContext(context.Background()) +} + +func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlOutputWithContext(ctx context.Context) TemplateParameterDropDownControlOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterDropDownControlOutput) +} + +func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { + return i.ToTemplateParameterDropDownControlPtrOutputWithContext(context.Background()) +} + +func (i TemplateParameterDropDownControlArgs) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterDropDownControlOutput).ToTemplateParameterDropDownControlPtrOutputWithContext(ctx) +} + +// TemplateParameterDropDownControlPtrInput is an input type that accepts TemplateParameterDropDownControlArgs, TemplateParameterDropDownControlPtr and TemplateParameterDropDownControlPtrOutput values. +// You can construct a concrete instance of `TemplateParameterDropDownControlPtrInput` via: +// +// TemplateParameterDropDownControlArgs{...} +// +// or: +// +// nil +type TemplateParameterDropDownControlPtrInput interface { + pulumi.Input + + ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput + ToTemplateParameterDropDownControlPtrOutputWithContext(context.Context) TemplateParameterDropDownControlPtrOutput +} + +type templateParameterDropDownControlPtrType TemplateParameterDropDownControlArgs + +func TemplateParameterDropDownControlPtr(v *TemplateParameterDropDownControlArgs) TemplateParameterDropDownControlPtrInput { + return (*templateParameterDropDownControlPtrType)(v) +} + +func (*templateParameterDropDownControlPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TemplateParameterDropDownControl)(nil)).Elem() +} + +func (i *templateParameterDropDownControlPtrType) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { + return i.ToTemplateParameterDropDownControlPtrOutputWithContext(context.Background()) +} + +func (i *templateParameterDropDownControlPtrType) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterDropDownControlPtrOutput) +} + +type TemplateParameterDropDownControlOutput struct{ *pulumi.OutputState } + +func (TemplateParameterDropDownControlOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateParameterDropDownControl)(nil)).Elem() +} + +func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlOutput() TemplateParameterDropDownControlOutput { + return o +} + +func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlOutputWithContext(ctx context.Context) TemplateParameterDropDownControlOutput { + return o +} + +func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { + return o.ToTemplateParameterDropDownControlPtrOutputWithContext(context.Background()) +} + +func (o TemplateParameterDropDownControlOutput) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TemplateParameterDropDownControl) *TemplateParameterDropDownControl { + return &v + }).(TemplateParameterDropDownControlPtrOutput) +} + +// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. +func (o TemplateParameterDropDownControlOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateCascadingControlConfiguration { + return v.CascadingControlConfiguration + }).(TemplateCascadingControlConfigurationPtrOutput) +} + +// The visibility configuration of the Apply button on a `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlOutput) CommitMode() TemplateCommitModePtrOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateCommitMode { return v.CommitMode }).(TemplateCommitModePtrOutput) +} + +// The display options of a control. +func (o TemplateParameterDropDownControlOutput) DisplayOptions() TemplateDropDownControlDisplayOptionsPtrOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateDropDownControlDisplayOptions { + return v.DisplayOptions + }).(TemplateDropDownControlDisplayOptionsPtrOutput) +} + +// The ID of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlOutput) ParameterControlId() pulumi.StringOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) string { return v.ParameterControlId }).(pulumi.StringOutput) +} + +// A list of selectable values that are used in a control. +func (o TemplateParameterDropDownControlOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateParameterSelectableValues { return v.SelectableValues }).(TemplateParameterSelectableValuesPtrOutput) +} + +// The source parameter name of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlOutput) SourceParameterName() pulumi.StringOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) string { return v.SourceParameterName }).(pulumi.StringOutput) +} + +// The title of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlOutput) Title() pulumi.StringOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) string { return v.Title }).(pulumi.StringOutput) +} + +// The type parameter name of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlOutput) Type() TemplateSheetControlListTypePtrOutput { + return o.ApplyT(func(v TemplateParameterDropDownControl) *TemplateSheetControlListType { return v.Type }).(TemplateSheetControlListTypePtrOutput) +} + +type TemplateParameterDropDownControlPtrOutput struct{ *pulumi.OutputState } + +func (TemplateParameterDropDownControlPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TemplateParameterDropDownControl)(nil)).Elem() +} + +func (o TemplateParameterDropDownControlPtrOutput) ToTemplateParameterDropDownControlPtrOutput() TemplateParameterDropDownControlPtrOutput { + return o +} + +func (o TemplateParameterDropDownControlPtrOutput) ToTemplateParameterDropDownControlPtrOutputWithContext(ctx context.Context) TemplateParameterDropDownControlPtrOutput { + return o +} + +func (o TemplateParameterDropDownControlPtrOutput) Elem() TemplateParameterDropDownControlOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) TemplateParameterDropDownControl { + if v != nil { + return *v + } + var ret TemplateParameterDropDownControl + return ret + }).(TemplateParameterDropDownControlOutput) +} + +// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. +func (o TemplateParameterDropDownControlPtrOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateCascadingControlConfiguration { + if v == nil { + return nil + } + return v.CascadingControlConfiguration + }).(TemplateCascadingControlConfigurationPtrOutput) +} + +// The visibility configuration of the Apply button on a `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlPtrOutput) CommitMode() TemplateCommitModePtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateCommitMode { + if v == nil { + return nil + } + return v.CommitMode + }).(TemplateCommitModePtrOutput) +} + +// The display options of a control. +func (o TemplateParameterDropDownControlPtrOutput) DisplayOptions() TemplateDropDownControlDisplayOptionsPtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateDropDownControlDisplayOptions { + if v == nil { + return nil + } + return v.DisplayOptions + }).(TemplateDropDownControlDisplayOptionsPtrOutput) +} + +// The ID of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlPtrOutput) ParameterControlId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *string { + if v == nil { + return nil + } + return &v.ParameterControlId + }).(pulumi.StringPtrOutput) +} + +// A list of selectable values that are used in a control. +func (o TemplateParameterDropDownControlPtrOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateParameterSelectableValues { + if v == nil { + return nil + } + return v.SelectableValues + }).(TemplateParameterSelectableValuesPtrOutput) +} + +// The source parameter name of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlPtrOutput) SourceParameterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *string { + if v == nil { + return nil + } + return &v.SourceParameterName + }).(pulumi.StringPtrOutput) +} + +// The title of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlPtrOutput) Title() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *string { + if v == nil { + return nil + } + return &v.Title + }).(pulumi.StringPtrOutput) +} + +// The type parameter name of the `ParameterDropDownControl` . +func (o TemplateParameterDropDownControlPtrOutput) Type() TemplateSheetControlListTypePtrOutput { + return o.ApplyT(func(v *TemplateParameterDropDownControl) *TemplateSheetControlListType { + if v == nil { + return nil + } + return v.Type + }).(TemplateSheetControlListTypePtrOutput) +} + +type TemplateParameterListControl struct { + // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. + CascadingControlConfiguration *TemplateCascadingControlConfiguration `pulumi:"cascadingControlConfiguration"` + // The display options of a control. + DisplayOptions *TemplateListControlDisplayOptions `pulumi:"displayOptions"` + // The ID of the `ParameterListControl` . + ParameterControlId string `pulumi:"parameterControlId"` + // A list of selectable values that are used in a control. + SelectableValues *TemplateParameterSelectableValues `pulumi:"selectableValues"` + // The source parameter name of the `ParameterListControl` . + SourceParameterName string `pulumi:"sourceParameterName"` + // The title of the `ParameterListControl` . + Title string `pulumi:"title"` + // The type of `ParameterListControl` . + Type *TemplateSheetControlListType `pulumi:"type"` +} + +// TemplateParameterListControlInput is an input type that accepts TemplateParameterListControlArgs and TemplateParameterListControlOutput values. +// You can construct a concrete instance of `TemplateParameterListControlInput` via: +// +// TemplateParameterListControlArgs{...} +type TemplateParameterListControlInput interface { + pulumi.Input + + ToTemplateParameterListControlOutput() TemplateParameterListControlOutput + ToTemplateParameterListControlOutputWithContext(context.Context) TemplateParameterListControlOutput +} + +type TemplateParameterListControlArgs struct { + // The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. + CascadingControlConfiguration TemplateCascadingControlConfigurationPtrInput `pulumi:"cascadingControlConfiguration"` + // The display options of a control. + DisplayOptions TemplateListControlDisplayOptionsPtrInput `pulumi:"displayOptions"` + // The ID of the `ParameterListControl` . + ParameterControlId pulumi.StringInput `pulumi:"parameterControlId"` + // A list of selectable values that are used in a control. + SelectableValues TemplateParameterSelectableValuesPtrInput `pulumi:"selectableValues"` + // The source parameter name of the `ParameterListControl` . + SourceParameterName pulumi.StringInput `pulumi:"sourceParameterName"` + // The title of the `ParameterListControl` . + Title pulumi.StringInput `pulumi:"title"` + // The type of `ParameterListControl` . + Type TemplateSheetControlListTypePtrInput `pulumi:"type"` +} + +func (TemplateParameterListControlArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateParameterListControl)(nil)).Elem() +} + +func (i TemplateParameterListControlArgs) ToTemplateParameterListControlOutput() TemplateParameterListControlOutput { + return i.ToTemplateParameterListControlOutputWithContext(context.Background()) +} + +func (i TemplateParameterListControlArgs) ToTemplateParameterListControlOutputWithContext(ctx context.Context) TemplateParameterListControlOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterListControlOutput) +} + +func (i TemplateParameterListControlArgs) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { + return i.ToTemplateParameterListControlPtrOutputWithContext(context.Background()) +} + +func (i TemplateParameterListControlArgs) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterListControlOutput).ToTemplateParameterListControlPtrOutputWithContext(ctx) +} + +// TemplateParameterListControlPtrInput is an input type that accepts TemplateParameterListControlArgs, TemplateParameterListControlPtr and TemplateParameterListControlPtrOutput values. +// You can construct a concrete instance of `TemplateParameterListControlPtrInput` via: +// +// TemplateParameterListControlArgs{...} +// +// or: +// +// nil +type TemplateParameterListControlPtrInput interface { + pulumi.Input + + ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput + ToTemplateParameterListControlPtrOutputWithContext(context.Context) TemplateParameterListControlPtrOutput +} + +type templateParameterListControlPtrType TemplateParameterListControlArgs + +func TemplateParameterListControlPtr(v *TemplateParameterListControlArgs) TemplateParameterListControlPtrInput { + return (*templateParameterListControlPtrType)(v) +} + +func (*templateParameterListControlPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TemplateParameterListControl)(nil)).Elem() +} + +func (i *templateParameterListControlPtrType) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { + return i.ToTemplateParameterListControlPtrOutputWithContext(context.Background()) +} + +func (i *templateParameterListControlPtrType) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateParameterListControlPtrOutput) +} + +type TemplateParameterListControlOutput struct{ *pulumi.OutputState } + +func (TemplateParameterListControlOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateParameterListControl)(nil)).Elem() +} + +func (o TemplateParameterListControlOutput) ToTemplateParameterListControlOutput() TemplateParameterListControlOutput { + return o +} + +func (o TemplateParameterListControlOutput) ToTemplateParameterListControlOutputWithContext(ctx context.Context) TemplateParameterListControlOutput { + return o +} + +func (o TemplateParameterListControlOutput) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { + return o.ToTemplateParameterListControlPtrOutputWithContext(context.Background()) +} + +func (o TemplateParameterListControlOutput) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TemplateParameterListControl) *TemplateParameterListControl { + return &v + }).(TemplateParameterListControlPtrOutput) +} + +// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. +func (o TemplateParameterListControlOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { + return o.ApplyT(func(v TemplateParameterListControl) *TemplateCascadingControlConfiguration { + return v.CascadingControlConfiguration + }).(TemplateCascadingControlConfigurationPtrOutput) +} + +// The display options of a control. +func (o TemplateParameterListControlOutput) DisplayOptions() TemplateListControlDisplayOptionsPtrOutput { + return o.ApplyT(func(v TemplateParameterListControl) *TemplateListControlDisplayOptions { return v.DisplayOptions }).(TemplateListControlDisplayOptionsPtrOutput) +} + +// The ID of the `ParameterListControl` . +func (o TemplateParameterListControlOutput) ParameterControlId() pulumi.StringOutput { + return o.ApplyT(func(v TemplateParameterListControl) string { return v.ParameterControlId }).(pulumi.StringOutput) +} + +// A list of selectable values that are used in a control. +func (o TemplateParameterListControlOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { + return o.ApplyT(func(v TemplateParameterListControl) *TemplateParameterSelectableValues { return v.SelectableValues }).(TemplateParameterSelectableValuesPtrOutput) +} + +// The source parameter name of the `ParameterListControl` . +func (o TemplateParameterListControlOutput) SourceParameterName() pulumi.StringOutput { + return o.ApplyT(func(v TemplateParameterListControl) string { return v.SourceParameterName }).(pulumi.StringOutput) +} + +// The title of the `ParameterListControl` . +func (o TemplateParameterListControlOutput) Title() pulumi.StringOutput { + return o.ApplyT(func(v TemplateParameterListControl) string { return v.Title }).(pulumi.StringOutput) +} + +// The type of `ParameterListControl` . +func (o TemplateParameterListControlOutput) Type() TemplateSheetControlListTypePtrOutput { + return o.ApplyT(func(v TemplateParameterListControl) *TemplateSheetControlListType { return v.Type }).(TemplateSheetControlListTypePtrOutput) +} + +type TemplateParameterListControlPtrOutput struct{ *pulumi.OutputState } + +func (TemplateParameterListControlPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TemplateParameterListControl)(nil)).Elem() +} + +func (o TemplateParameterListControlPtrOutput) ToTemplateParameterListControlPtrOutput() TemplateParameterListControlPtrOutput { + return o +} + +func (o TemplateParameterListControlPtrOutput) ToTemplateParameterListControlPtrOutputWithContext(ctx context.Context) TemplateParameterListControlPtrOutput { + return o +} + +func (o TemplateParameterListControlPtrOutput) Elem() TemplateParameterListControlOutput { + return o.ApplyT(func(v *TemplateParameterListControl) TemplateParameterListControl { + if v != nil { + return *v + } + var ret TemplateParameterListControl + return ret + }).(TemplateParameterListControlOutput) +} + +// The values that are displayed in a control can be configured to only show values that are valid based on what's selected in other controls. +func (o TemplateParameterListControlPtrOutput) CascadingControlConfiguration() TemplateCascadingControlConfigurationPtrOutput { + return o.ApplyT(func(v *TemplateParameterListControl) *TemplateCascadingControlConfiguration { + if v == nil { + return nil + } + return v.CascadingControlConfiguration + }).(TemplateCascadingControlConfigurationPtrOutput) +} + +// The display options of a control. +func (o TemplateParameterListControlPtrOutput) DisplayOptions() TemplateListControlDisplayOptionsPtrOutput { + return o.ApplyT(func(v *TemplateParameterListControl) *TemplateListControlDisplayOptions { + if v == nil { + return nil + } + return v.DisplayOptions + }).(TemplateListControlDisplayOptionsPtrOutput) +} + +// The ID of the `ParameterListControl` . +func (o TemplateParameterListControlPtrOutput) ParameterControlId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TemplateParameterListControl) *string { + if v == nil { + return nil + } + return &v.ParameterControlId + }).(pulumi.StringPtrOutput) +} + +// A list of selectable values that are used in a control. +func (o TemplateParameterListControlPtrOutput) SelectableValues() TemplateParameterSelectableValuesPtrOutput { + return o.ApplyT(func(v *TemplateParameterListControl) *TemplateParameterSelectableValues { + if v == nil { + return nil + } + return v.SelectableValues + }).(TemplateParameterSelectableValuesPtrOutput) +} + +// The source parameter name of the `ParameterListControl` . +func (o TemplateParameterListControlPtrOutput) SourceParameterName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TemplateParameterListControl) *string { + if v == nil { + return nil + } + return &v.SourceParameterName + }).(pulumi.StringPtrOutput) +} + +// The title of the `ParameterListControl` . +func (o TemplateParameterListControlPtrOutput) Title() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TemplateParameterListControl) *string { + if v == nil { + return nil + } + return &v.Title + }).(pulumi.StringPtrOutput) +} + +// The type of `ParameterListControl` . +func (o TemplateParameterListControlPtrOutput) Type() TemplateSheetControlListTypePtrOutput { + return o.ApplyT(func(v *TemplateParameterListControl) *TemplateSheetControlListType { + if v == nil { + return nil + } + return v.Type + }).(TemplateSheetControlListTypePtrOutput) +} + type TemplateParameterSelectableValues struct { // The column identifier that fetches values from the data set. LinkToDataSetColumn *TemplateColumnIdentifier `pulumi:"linkToDataSetColumn"` @@ -41864,6 +42391,10 @@ type VpcConnectionTag struct { } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterDropDownControlInput)(nil)).Elem(), TemplateParameterDropDownControlArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterDropDownControlPtrInput)(nil)).Elem(), TemplateParameterDropDownControlArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterListControlInput)(nil)).Elem(), TemplateParameterListControlArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterListControlPtrInput)(nil)).Elem(), TemplateParameterListControlArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterSelectableValuesInput)(nil)).Elem(), TemplateParameterSelectableValuesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterSelectableValuesPtrInput)(nil)).Elem(), TemplateParameterSelectableValuesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateParameterSliderControlInput)(nil)).Elem(), TemplateParameterSliderControlArgs{}) @@ -42333,6 +42864,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TopicSemanticTypePtrInput)(nil)).Elem(), TopicSemanticTypeArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TopicSingularFilterConstantInput)(nil)).Elem(), TopicSingularFilterConstantArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TopicSingularFilterConstantPtrInput)(nil)).Elem(), TopicSingularFilterConstantArgs{}) + pulumi.RegisterOutputType(TemplateParameterDropDownControlOutput{}) + pulumi.RegisterOutputType(TemplateParameterDropDownControlPtrOutput{}) + pulumi.RegisterOutputType(TemplateParameterListControlOutput{}) + pulumi.RegisterOutputType(TemplateParameterListControlPtrOutput{}) pulumi.RegisterOutputType(TemplateParameterSelectableValuesOutput{}) pulumi.RegisterOutputType(TemplateParameterSelectableValuesPtrOutput{}) pulumi.RegisterOutputType(TemplateParameterSliderControlOutput{}) diff --git a/sdk/go/aws/redshiftserverless/pulumiTypes.go b/sdk/go/aws/redshiftserverless/pulumiTypes.go index ab90961f2b..9264789216 100644 --- a/sdk/go/aws/redshiftserverless/pulumiTypes.go +++ b/sdk/go/aws/redshiftserverless/pulumiTypes.go @@ -411,7 +411,8 @@ type WorkgroupType struct { // The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity is specified in RPUs. MaxCapacity *int `pulumi:"maxCapacity"` // The namespace the workgroup is associated with. - NamespaceName *string `pulumi:"namespaceName"` + NamespaceName *string `pulumi:"namespaceName"` + // An object that represents the price performance target settings for the workgroup. PricePerformanceTarget *WorkgroupPerformanceTarget `pulumi:"pricePerformanceTarget"` // A value that specifies whether the workgroup can be accessible from a public network. PubliclyAccessible *bool `pulumi:"publiclyAccessible"` @@ -478,6 +479,7 @@ func (o WorkgroupTypeOutput) NamespaceName() pulumi.StringPtrOutput { return o.ApplyT(func(v WorkgroupType) *string { return v.NamespaceName }).(pulumi.StringPtrOutput) } +// An object that represents the price performance target settings for the workgroup. func (o WorkgroupTypeOutput) PricePerformanceTarget() WorkgroupPerformanceTargetPtrOutput { return o.ApplyT(func(v WorkgroupType) *WorkgroupPerformanceTarget { return v.PricePerformanceTarget }).(WorkgroupPerformanceTargetPtrOutput) } @@ -611,6 +613,7 @@ func (o WorkgroupTypePtrOutput) NamespaceName() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// An object that represents the price performance target settings for the workgroup. func (o WorkgroupTypePtrOutput) PricePerformanceTarget() WorkgroupPerformanceTargetPtrOutput { return o.ApplyT(func(v *WorkgroupType) *WorkgroupPerformanceTarget { if v == nil { @@ -954,7 +957,9 @@ func (o WorkgroupNetworkInterfaceArrayOutput) Index(i pulumi.IntInput) Workgroup } type WorkgroupPerformanceTarget struct { - Level *int `pulumi:"level"` + // The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + Level *int `pulumi:"level"` + // Whether the price performance target is enabled for the workgroup. Status *WorkgroupPerformanceTargetStatus `pulumi:"status"` } @@ -970,7 +975,9 @@ type WorkgroupPerformanceTargetInput interface { } type WorkgroupPerformanceTargetArgs struct { - Level pulumi.IntPtrInput `pulumi:"level"` + // The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + Level pulumi.IntPtrInput `pulumi:"level"` + // Whether the price performance target is enabled for the workgroup. Status WorkgroupPerformanceTargetStatusPtrInput `pulumi:"status"` } @@ -1051,10 +1058,12 @@ func (o WorkgroupPerformanceTargetOutput) ToWorkgroupPerformanceTargetPtrOutputW }).(WorkgroupPerformanceTargetPtrOutput) } +// The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. func (o WorkgroupPerformanceTargetOutput) Level() pulumi.IntPtrOutput { return o.ApplyT(func(v WorkgroupPerformanceTarget) *int { return v.Level }).(pulumi.IntPtrOutput) } +// Whether the price performance target is enabled for the workgroup. func (o WorkgroupPerformanceTargetOutput) Status() WorkgroupPerformanceTargetStatusPtrOutput { return o.ApplyT(func(v WorkgroupPerformanceTarget) *WorkgroupPerformanceTargetStatus { return v.Status }).(WorkgroupPerformanceTargetStatusPtrOutput) } @@ -1083,6 +1092,7 @@ func (o WorkgroupPerformanceTargetPtrOutput) Elem() WorkgroupPerformanceTargetOu }).(WorkgroupPerformanceTargetOutput) } +// The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. func (o WorkgroupPerformanceTargetPtrOutput) Level() pulumi.IntPtrOutput { return o.ApplyT(func(v *WorkgroupPerformanceTarget) *int { if v == nil { @@ -1092,6 +1102,7 @@ func (o WorkgroupPerformanceTargetPtrOutput) Level() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } +// Whether the price performance target is enabled for the workgroup. func (o WorkgroupPerformanceTargetPtrOutput) Status() WorkgroupPerformanceTargetStatusPtrOutput { return o.ApplyT(func(v *WorkgroupPerformanceTarget) *WorkgroupPerformanceTargetStatus { if v == nil { diff --git a/sdk/go/aws/s3/bucket.go b/sdk/go/aws/s3/bucket.go index 4c764e2581..7f6e4382e5 100644 --- a/sdk/go/aws/s3/bucket.go +++ b/sdk/go/aws/s3/bucket.go @@ -820,8 +820,7 @@ type Bucket struct { // Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see [Object Lifecycle Management](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the *Amazon S3 User Guide*. LifecycleConfiguration BucketLifecycleConfigurationPtrOutput `pulumi:"lifecycleConfiguration"` // Settings that define where logs are stored. - LoggingConfiguration BucketLoggingConfigurationPtrOutput `pulumi:"loggingConfiguration"` - MetadataTableConfiguration BucketMetadataTableConfigurationPtrOutput `pulumi:"metadataTableConfiguration"` + LoggingConfiguration BucketLoggingConfigurationPtrOutput `pulumi:"loggingConfiguration"` // Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). MetricsConfigurations BucketMetricsConfigurationArrayOutput `pulumi:"metricsConfigurations"` // Configuration that defines how Amazon S3 handles bucket notifications. @@ -927,8 +926,7 @@ type bucketArgs struct { // Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see [Object Lifecycle Management](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the *Amazon S3 User Guide*. LifecycleConfiguration *BucketLifecycleConfiguration `pulumi:"lifecycleConfiguration"` // Settings that define where logs are stored. - LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` - MetadataTableConfiguration *BucketMetadataTableConfiguration `pulumi:"metadataTableConfiguration"` + LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` // Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). MetricsConfigurations []BucketMetricsConfiguration `pulumi:"metricsConfigurations"` // Configuration that defines how Amazon S3 handles bucket notifications. @@ -982,8 +980,7 @@ type BucketArgs struct { // Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see [Object Lifecycle Management](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the *Amazon S3 User Guide*. LifecycleConfiguration BucketLifecycleConfigurationPtrInput // Settings that define where logs are stored. - LoggingConfiguration BucketLoggingConfigurationPtrInput - MetadataTableConfiguration BucketMetadataTableConfigurationPtrInput + LoggingConfiguration BucketLoggingConfigurationPtrInput // Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). MetricsConfigurations BucketMetricsConfigurationArrayInput // Configuration that defines how Amazon S3 handles bucket notifications. @@ -1130,10 +1127,6 @@ func (o BucketOutput) LoggingConfiguration() BucketLoggingConfigurationPtrOutput return o.ApplyT(func(v *Bucket) BucketLoggingConfigurationPtrOutput { return v.LoggingConfiguration }).(BucketLoggingConfigurationPtrOutput) } -func (o BucketOutput) MetadataTableConfiguration() BucketMetadataTableConfigurationPtrOutput { - return o.ApplyT(func(v *Bucket) BucketMetadataTableConfigurationPtrOutput { return v.MetadataTableConfiguration }).(BucketMetadataTableConfigurationPtrOutput) -} - // Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). func (o BucketOutput) MetricsConfigurations() BucketMetricsConfigurationArrayOutput { return o.ApplyT(func(v *Bucket) BucketMetricsConfigurationArrayOutput { return v.MetricsConfigurations }).(BucketMetricsConfigurationArrayOutput) diff --git a/sdk/go/aws/s3/getBucket.go b/sdk/go/aws/s3/getBucket.go index 9b690e65d5..28e3f328da 100644 --- a/sdk/go/aws/s3/getBucket.go +++ b/sdk/go/aws/s3/getBucket.go @@ -62,8 +62,7 @@ type LookupBucketResult struct { // Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see [Object Lifecycle Management](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the *Amazon S3 User Guide*. LifecycleConfiguration *BucketLifecycleConfiguration `pulumi:"lifecycleConfiguration"` // Settings that define where logs are stored. - LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` - MetadataTableConfiguration *BucketMetadataTableConfiguration `pulumi:"metadataTableConfiguration"` + LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` // Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). MetricsConfigurations []BucketMetricsConfiguration `pulumi:"metricsConfigurations"` // Configuration that defines how Amazon S3 handles bucket notifications. @@ -200,10 +199,6 @@ func (o LookupBucketResultOutput) LoggingConfiguration() BucketLoggingConfigurat return o.ApplyT(func(v LookupBucketResult) *BucketLoggingConfiguration { return v.LoggingConfiguration }).(BucketLoggingConfigurationPtrOutput) } -func (o LookupBucketResultOutput) MetadataTableConfiguration() BucketMetadataTableConfigurationPtrOutput { - return o.ApplyT(func(v LookupBucketResult) *BucketMetadataTableConfiguration { return v.MetadataTableConfiguration }).(BucketMetadataTableConfigurationPtrOutput) -} - // Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). func (o LookupBucketResultOutput) MetricsConfigurations() BucketMetricsConfigurationArrayOutput { return o.ApplyT(func(v LookupBucketResult) []BucketMetricsConfiguration { return v.MetricsConfigurations }).(BucketMetricsConfigurationArrayOutput) diff --git a/sdk/go/aws/s3/pulumiTypes.go b/sdk/go/aws/s3/pulumiTypes.go index 64a6b27868..ccbb58bc82 100644 --- a/sdk/go/aws/s3/pulumiTypes.go +++ b/sdk/go/aws/s3/pulumiTypes.go @@ -3481,333 +3481,6 @@ func (o BucketLoggingConfigurationPtrOutput) TargetObjectKeyFormat() BucketTarge }).(BucketTargetObjectKeyFormatPtrOutput) } -type BucketMetadataTableConfiguration struct { - // Returns the Error value of the GetBucketMetadataTableConfiguration response. - Error *BucketMetadataTableError `pulumi:"error"` - S3TablesDestination BucketS3TablesDestination `pulumi:"s3TablesDestination"` - // Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - Status *string `pulumi:"status"` -} - -// BucketMetadataTableConfigurationInput is an input type that accepts BucketMetadataTableConfigurationArgs and BucketMetadataTableConfigurationOutput values. -// You can construct a concrete instance of `BucketMetadataTableConfigurationInput` via: -// -// BucketMetadataTableConfigurationArgs{...} -type BucketMetadataTableConfigurationInput interface { - pulumi.Input - - ToBucketMetadataTableConfigurationOutput() BucketMetadataTableConfigurationOutput - ToBucketMetadataTableConfigurationOutputWithContext(context.Context) BucketMetadataTableConfigurationOutput -} - -type BucketMetadataTableConfigurationArgs struct { - // Returns the Error value of the GetBucketMetadataTableConfiguration response. - Error BucketMetadataTableErrorPtrInput `pulumi:"error"` - S3TablesDestination BucketS3TablesDestinationInput `pulumi:"s3TablesDestination"` - // Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - Status pulumi.StringPtrInput `pulumi:"status"` -} - -func (BucketMetadataTableConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*BucketMetadataTableConfiguration)(nil)).Elem() -} - -func (i BucketMetadataTableConfigurationArgs) ToBucketMetadataTableConfigurationOutput() BucketMetadataTableConfigurationOutput { - return i.ToBucketMetadataTableConfigurationOutputWithContext(context.Background()) -} - -func (i BucketMetadataTableConfigurationArgs) ToBucketMetadataTableConfigurationOutputWithContext(ctx context.Context) BucketMetadataTableConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketMetadataTableConfigurationOutput) -} - -func (i BucketMetadataTableConfigurationArgs) ToBucketMetadataTableConfigurationPtrOutput() BucketMetadataTableConfigurationPtrOutput { - return i.ToBucketMetadataTableConfigurationPtrOutputWithContext(context.Background()) -} - -func (i BucketMetadataTableConfigurationArgs) ToBucketMetadataTableConfigurationPtrOutputWithContext(ctx context.Context) BucketMetadataTableConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketMetadataTableConfigurationOutput).ToBucketMetadataTableConfigurationPtrOutputWithContext(ctx) -} - -// BucketMetadataTableConfigurationPtrInput is an input type that accepts BucketMetadataTableConfigurationArgs, BucketMetadataTableConfigurationPtr and BucketMetadataTableConfigurationPtrOutput values. -// You can construct a concrete instance of `BucketMetadataTableConfigurationPtrInput` via: -// -// BucketMetadataTableConfigurationArgs{...} -// -// or: -// -// nil -type BucketMetadataTableConfigurationPtrInput interface { - pulumi.Input - - ToBucketMetadataTableConfigurationPtrOutput() BucketMetadataTableConfigurationPtrOutput - ToBucketMetadataTableConfigurationPtrOutputWithContext(context.Context) BucketMetadataTableConfigurationPtrOutput -} - -type bucketMetadataTableConfigurationPtrType BucketMetadataTableConfigurationArgs - -func BucketMetadataTableConfigurationPtr(v *BucketMetadataTableConfigurationArgs) BucketMetadataTableConfigurationPtrInput { - return (*bucketMetadataTableConfigurationPtrType)(v) -} - -func (*bucketMetadataTableConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**BucketMetadataTableConfiguration)(nil)).Elem() -} - -func (i *bucketMetadataTableConfigurationPtrType) ToBucketMetadataTableConfigurationPtrOutput() BucketMetadataTableConfigurationPtrOutput { - return i.ToBucketMetadataTableConfigurationPtrOutputWithContext(context.Background()) -} - -func (i *bucketMetadataTableConfigurationPtrType) ToBucketMetadataTableConfigurationPtrOutputWithContext(ctx context.Context) BucketMetadataTableConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketMetadataTableConfigurationPtrOutput) -} - -type BucketMetadataTableConfigurationOutput struct{ *pulumi.OutputState } - -func (BucketMetadataTableConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketMetadataTableConfiguration)(nil)).Elem() -} - -func (o BucketMetadataTableConfigurationOutput) ToBucketMetadataTableConfigurationOutput() BucketMetadataTableConfigurationOutput { - return o -} - -func (o BucketMetadataTableConfigurationOutput) ToBucketMetadataTableConfigurationOutputWithContext(ctx context.Context) BucketMetadataTableConfigurationOutput { - return o -} - -func (o BucketMetadataTableConfigurationOutput) ToBucketMetadataTableConfigurationPtrOutput() BucketMetadataTableConfigurationPtrOutput { - return o.ToBucketMetadataTableConfigurationPtrOutputWithContext(context.Background()) -} - -func (o BucketMetadataTableConfigurationOutput) ToBucketMetadataTableConfigurationPtrOutputWithContext(ctx context.Context) BucketMetadataTableConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketMetadataTableConfiguration) *BucketMetadataTableConfiguration { - return &v - }).(BucketMetadataTableConfigurationPtrOutput) -} - -// Returns the Error value of the GetBucketMetadataTableConfiguration response. -func (o BucketMetadataTableConfigurationOutput) Error() BucketMetadataTableErrorPtrOutput { - return o.ApplyT(func(v BucketMetadataTableConfiguration) *BucketMetadataTableError { return v.Error }).(BucketMetadataTableErrorPtrOutput) -} - -func (o BucketMetadataTableConfigurationOutput) S3TablesDestination() BucketS3TablesDestinationOutput { - return o.ApplyT(func(v BucketMetadataTableConfiguration) BucketS3TablesDestination { return v.S3TablesDestination }).(BucketS3TablesDestinationOutput) -} - -// Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. -func (o BucketMetadataTableConfigurationOutput) Status() pulumi.StringPtrOutput { - return o.ApplyT(func(v BucketMetadataTableConfiguration) *string { return v.Status }).(pulumi.StringPtrOutput) -} - -type BucketMetadataTableConfigurationPtrOutput struct{ *pulumi.OutputState } - -func (BucketMetadataTableConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketMetadataTableConfiguration)(nil)).Elem() -} - -func (o BucketMetadataTableConfigurationPtrOutput) ToBucketMetadataTableConfigurationPtrOutput() BucketMetadataTableConfigurationPtrOutput { - return o -} - -func (o BucketMetadataTableConfigurationPtrOutput) ToBucketMetadataTableConfigurationPtrOutputWithContext(ctx context.Context) BucketMetadataTableConfigurationPtrOutput { - return o -} - -func (o BucketMetadataTableConfigurationPtrOutput) Elem() BucketMetadataTableConfigurationOutput { - return o.ApplyT(func(v *BucketMetadataTableConfiguration) BucketMetadataTableConfiguration { - if v != nil { - return *v - } - var ret BucketMetadataTableConfiguration - return ret - }).(BucketMetadataTableConfigurationOutput) -} - -// Returns the Error value of the GetBucketMetadataTableConfiguration response. -func (o BucketMetadataTableConfigurationPtrOutput) Error() BucketMetadataTableErrorPtrOutput { - return o.ApplyT(func(v *BucketMetadataTableConfiguration) *BucketMetadataTableError { - if v == nil { - return nil - } - return v.Error - }).(BucketMetadataTableErrorPtrOutput) -} - -func (o BucketMetadataTableConfigurationPtrOutput) S3TablesDestination() BucketS3TablesDestinationPtrOutput { - return o.ApplyT(func(v *BucketMetadataTableConfiguration) *BucketS3TablesDestination { - if v == nil { - return nil - } - return &v.S3TablesDestination - }).(BucketS3TablesDestinationPtrOutput) -} - -// Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. -func (o BucketMetadataTableConfigurationPtrOutput) Status() pulumi.StringPtrOutput { - return o.ApplyT(func(v *BucketMetadataTableConfiguration) *string { - if v == nil { - return nil - } - return v.Status - }).(pulumi.StringPtrOutput) -} - -type BucketMetadataTableError struct { - // If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - ErrorCode string `pulumi:"errorCode"` - // If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - ErrorMessage string `pulumi:"errorMessage"` -} - -// BucketMetadataTableErrorInput is an input type that accepts BucketMetadataTableErrorArgs and BucketMetadataTableErrorOutput values. -// You can construct a concrete instance of `BucketMetadataTableErrorInput` via: -// -// BucketMetadataTableErrorArgs{...} -type BucketMetadataTableErrorInput interface { - pulumi.Input - - ToBucketMetadataTableErrorOutput() BucketMetadataTableErrorOutput - ToBucketMetadataTableErrorOutputWithContext(context.Context) BucketMetadataTableErrorOutput -} - -type BucketMetadataTableErrorArgs struct { - // If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - ErrorCode pulumi.StringInput `pulumi:"errorCode"` - // If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - ErrorMessage pulumi.StringInput `pulumi:"errorMessage"` -} - -func (BucketMetadataTableErrorArgs) ElementType() reflect.Type { - return reflect.TypeOf((*BucketMetadataTableError)(nil)).Elem() -} - -func (i BucketMetadataTableErrorArgs) ToBucketMetadataTableErrorOutput() BucketMetadataTableErrorOutput { - return i.ToBucketMetadataTableErrorOutputWithContext(context.Background()) -} - -func (i BucketMetadataTableErrorArgs) ToBucketMetadataTableErrorOutputWithContext(ctx context.Context) BucketMetadataTableErrorOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketMetadataTableErrorOutput) -} - -func (i BucketMetadataTableErrorArgs) ToBucketMetadataTableErrorPtrOutput() BucketMetadataTableErrorPtrOutput { - return i.ToBucketMetadataTableErrorPtrOutputWithContext(context.Background()) -} - -func (i BucketMetadataTableErrorArgs) ToBucketMetadataTableErrorPtrOutputWithContext(ctx context.Context) BucketMetadataTableErrorPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketMetadataTableErrorOutput).ToBucketMetadataTableErrorPtrOutputWithContext(ctx) -} - -// BucketMetadataTableErrorPtrInput is an input type that accepts BucketMetadataTableErrorArgs, BucketMetadataTableErrorPtr and BucketMetadataTableErrorPtrOutput values. -// You can construct a concrete instance of `BucketMetadataTableErrorPtrInput` via: -// -// BucketMetadataTableErrorArgs{...} -// -// or: -// -// nil -type BucketMetadataTableErrorPtrInput interface { - pulumi.Input - - ToBucketMetadataTableErrorPtrOutput() BucketMetadataTableErrorPtrOutput - ToBucketMetadataTableErrorPtrOutputWithContext(context.Context) BucketMetadataTableErrorPtrOutput -} - -type bucketMetadataTableErrorPtrType BucketMetadataTableErrorArgs - -func BucketMetadataTableErrorPtr(v *BucketMetadataTableErrorArgs) BucketMetadataTableErrorPtrInput { - return (*bucketMetadataTableErrorPtrType)(v) -} - -func (*bucketMetadataTableErrorPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**BucketMetadataTableError)(nil)).Elem() -} - -func (i *bucketMetadataTableErrorPtrType) ToBucketMetadataTableErrorPtrOutput() BucketMetadataTableErrorPtrOutput { - return i.ToBucketMetadataTableErrorPtrOutputWithContext(context.Background()) -} - -func (i *bucketMetadataTableErrorPtrType) ToBucketMetadataTableErrorPtrOutputWithContext(ctx context.Context) BucketMetadataTableErrorPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketMetadataTableErrorPtrOutput) -} - -type BucketMetadataTableErrorOutput struct{ *pulumi.OutputState } - -func (BucketMetadataTableErrorOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketMetadataTableError)(nil)).Elem() -} - -func (o BucketMetadataTableErrorOutput) ToBucketMetadataTableErrorOutput() BucketMetadataTableErrorOutput { - return o -} - -func (o BucketMetadataTableErrorOutput) ToBucketMetadataTableErrorOutputWithContext(ctx context.Context) BucketMetadataTableErrorOutput { - return o -} - -func (o BucketMetadataTableErrorOutput) ToBucketMetadataTableErrorPtrOutput() BucketMetadataTableErrorPtrOutput { - return o.ToBucketMetadataTableErrorPtrOutputWithContext(context.Background()) -} - -func (o BucketMetadataTableErrorOutput) ToBucketMetadataTableErrorPtrOutputWithContext(ctx context.Context) BucketMetadataTableErrorPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketMetadataTableError) *BucketMetadataTableError { - return &v - }).(BucketMetadataTableErrorPtrOutput) -} - -// If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. -func (o BucketMetadataTableErrorOutput) ErrorCode() pulumi.StringOutput { - return o.ApplyT(func(v BucketMetadataTableError) string { return v.ErrorCode }).(pulumi.StringOutput) -} - -// If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. -func (o BucketMetadataTableErrorOutput) ErrorMessage() pulumi.StringOutput { - return o.ApplyT(func(v BucketMetadataTableError) string { return v.ErrorMessage }).(pulumi.StringOutput) -} - -type BucketMetadataTableErrorPtrOutput struct{ *pulumi.OutputState } - -func (BucketMetadataTableErrorPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketMetadataTableError)(nil)).Elem() -} - -func (o BucketMetadataTableErrorPtrOutput) ToBucketMetadataTableErrorPtrOutput() BucketMetadataTableErrorPtrOutput { - return o -} - -func (o BucketMetadataTableErrorPtrOutput) ToBucketMetadataTableErrorPtrOutputWithContext(ctx context.Context) BucketMetadataTableErrorPtrOutput { - return o -} - -func (o BucketMetadataTableErrorPtrOutput) Elem() BucketMetadataTableErrorOutput { - return o.ApplyT(func(v *BucketMetadataTableError) BucketMetadataTableError { - if v != nil { - return *v - } - var ret BucketMetadataTableError - return ret - }).(BucketMetadataTableErrorOutput) -} - -// If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. -func (o BucketMetadataTableErrorPtrOutput) ErrorCode() pulumi.StringPtrOutput { - return o.ApplyT(func(v *BucketMetadataTableError) *string { - if v == nil { - return nil - } - return &v.ErrorCode - }).(pulumi.StringPtrOutput) -} - -// If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. -func (o BucketMetadataTableErrorPtrOutput) ErrorMessage() pulumi.StringPtrOutput { - return o.ApplyT(func(v *BucketMetadataTableError) *string { - if v == nil { - return nil - } - return &v.ErrorMessage - }).(pulumi.StringPtrOutput) -} - // A container specifying replication metrics-related settings enabling replication metrics and events. type BucketMetrics struct { // A container specifying the time threshold for emitting the ``s3:Replication:OperationMissedThreshold`` event. @@ -7953,200 +7626,6 @@ func (o BucketS3KeyFilterPtrOutput) Rules() BucketFilterRuleArrayOutput { }).(BucketFilterRuleArrayOutput) } -type BucketS3TablesDestination struct { - // The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - TableArn *string `pulumi:"tableArn"` - // The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - TableBucketArn string `pulumi:"tableBucketArn"` - // The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - TableName string `pulumi:"tableName"` - // The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - TableNamespace *string `pulumi:"tableNamespace"` -} - -// BucketS3TablesDestinationInput is an input type that accepts BucketS3TablesDestinationArgs and BucketS3TablesDestinationOutput values. -// You can construct a concrete instance of `BucketS3TablesDestinationInput` via: -// -// BucketS3TablesDestinationArgs{...} -type BucketS3TablesDestinationInput interface { - pulumi.Input - - ToBucketS3TablesDestinationOutput() BucketS3TablesDestinationOutput - ToBucketS3TablesDestinationOutputWithContext(context.Context) BucketS3TablesDestinationOutput -} - -type BucketS3TablesDestinationArgs struct { - // The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - TableArn pulumi.StringPtrInput `pulumi:"tableArn"` - // The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - TableBucketArn pulumi.StringInput `pulumi:"tableBucketArn"` - // The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - TableName pulumi.StringInput `pulumi:"tableName"` - // The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - TableNamespace pulumi.StringPtrInput `pulumi:"tableNamespace"` -} - -func (BucketS3TablesDestinationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*BucketS3TablesDestination)(nil)).Elem() -} - -func (i BucketS3TablesDestinationArgs) ToBucketS3TablesDestinationOutput() BucketS3TablesDestinationOutput { - return i.ToBucketS3TablesDestinationOutputWithContext(context.Background()) -} - -func (i BucketS3TablesDestinationArgs) ToBucketS3TablesDestinationOutputWithContext(ctx context.Context) BucketS3TablesDestinationOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketS3TablesDestinationOutput) -} - -func (i BucketS3TablesDestinationArgs) ToBucketS3TablesDestinationPtrOutput() BucketS3TablesDestinationPtrOutput { - return i.ToBucketS3TablesDestinationPtrOutputWithContext(context.Background()) -} - -func (i BucketS3TablesDestinationArgs) ToBucketS3TablesDestinationPtrOutputWithContext(ctx context.Context) BucketS3TablesDestinationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketS3TablesDestinationOutput).ToBucketS3TablesDestinationPtrOutputWithContext(ctx) -} - -// BucketS3TablesDestinationPtrInput is an input type that accepts BucketS3TablesDestinationArgs, BucketS3TablesDestinationPtr and BucketS3TablesDestinationPtrOutput values. -// You can construct a concrete instance of `BucketS3TablesDestinationPtrInput` via: -// -// BucketS3TablesDestinationArgs{...} -// -// or: -// -// nil -type BucketS3TablesDestinationPtrInput interface { - pulumi.Input - - ToBucketS3TablesDestinationPtrOutput() BucketS3TablesDestinationPtrOutput - ToBucketS3TablesDestinationPtrOutputWithContext(context.Context) BucketS3TablesDestinationPtrOutput -} - -type bucketS3TablesDestinationPtrType BucketS3TablesDestinationArgs - -func BucketS3TablesDestinationPtr(v *BucketS3TablesDestinationArgs) BucketS3TablesDestinationPtrInput { - return (*bucketS3TablesDestinationPtrType)(v) -} - -func (*bucketS3TablesDestinationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**BucketS3TablesDestination)(nil)).Elem() -} - -func (i *bucketS3TablesDestinationPtrType) ToBucketS3TablesDestinationPtrOutput() BucketS3TablesDestinationPtrOutput { - return i.ToBucketS3TablesDestinationPtrOutputWithContext(context.Background()) -} - -func (i *bucketS3TablesDestinationPtrType) ToBucketS3TablesDestinationPtrOutputWithContext(ctx context.Context) BucketS3TablesDestinationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketS3TablesDestinationPtrOutput) -} - -type BucketS3TablesDestinationOutput struct{ *pulumi.OutputState } - -func (BucketS3TablesDestinationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketS3TablesDestination)(nil)).Elem() -} - -func (o BucketS3TablesDestinationOutput) ToBucketS3TablesDestinationOutput() BucketS3TablesDestinationOutput { - return o -} - -func (o BucketS3TablesDestinationOutput) ToBucketS3TablesDestinationOutputWithContext(ctx context.Context) BucketS3TablesDestinationOutput { - return o -} - -func (o BucketS3TablesDestinationOutput) ToBucketS3TablesDestinationPtrOutput() BucketS3TablesDestinationPtrOutput { - return o.ToBucketS3TablesDestinationPtrOutputWithContext(context.Background()) -} - -func (o BucketS3TablesDestinationOutput) ToBucketS3TablesDestinationPtrOutputWithContext(ctx context.Context) BucketS3TablesDestinationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketS3TablesDestination) *BucketS3TablesDestination { - return &v - }).(BucketS3TablesDestinationPtrOutput) -} - -// The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. -func (o BucketS3TablesDestinationOutput) TableArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v BucketS3TablesDestination) *string { return v.TableArn }).(pulumi.StringPtrOutput) -} - -// The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. -func (o BucketS3TablesDestinationOutput) TableBucketArn() pulumi.StringOutput { - return o.ApplyT(func(v BucketS3TablesDestination) string { return v.TableBucketArn }).(pulumi.StringOutput) -} - -// The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. -func (o BucketS3TablesDestinationOutput) TableName() pulumi.StringOutput { - return o.ApplyT(func(v BucketS3TablesDestination) string { return v.TableName }).(pulumi.StringOutput) -} - -// The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. -func (o BucketS3TablesDestinationOutput) TableNamespace() pulumi.StringPtrOutput { - return o.ApplyT(func(v BucketS3TablesDestination) *string { return v.TableNamespace }).(pulumi.StringPtrOutput) -} - -type BucketS3TablesDestinationPtrOutput struct{ *pulumi.OutputState } - -func (BucketS3TablesDestinationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketS3TablesDestination)(nil)).Elem() -} - -func (o BucketS3TablesDestinationPtrOutput) ToBucketS3TablesDestinationPtrOutput() BucketS3TablesDestinationPtrOutput { - return o -} - -func (o BucketS3TablesDestinationPtrOutput) ToBucketS3TablesDestinationPtrOutputWithContext(ctx context.Context) BucketS3TablesDestinationPtrOutput { - return o -} - -func (o BucketS3TablesDestinationPtrOutput) Elem() BucketS3TablesDestinationOutput { - return o.ApplyT(func(v *BucketS3TablesDestination) BucketS3TablesDestination { - if v != nil { - return *v - } - var ret BucketS3TablesDestination - return ret - }).(BucketS3TablesDestinationOutput) -} - -// The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. -func (o BucketS3TablesDestinationPtrOutput) TableArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v *BucketS3TablesDestination) *string { - if v == nil { - return nil - } - return v.TableArn - }).(pulumi.StringPtrOutput) -} - -// The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. -func (o BucketS3TablesDestinationPtrOutput) TableBucketArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v *BucketS3TablesDestination) *string { - if v == nil { - return nil - } - return &v.TableBucketArn - }).(pulumi.StringPtrOutput) -} - -// The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. -func (o BucketS3TablesDestinationPtrOutput) TableName() pulumi.StringPtrOutput { - return o.ApplyT(func(v *BucketS3TablesDestination) *string { - if v == nil { - return nil - } - return &v.TableName - }).(pulumi.StringPtrOutput) -} - -// The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. -func (o BucketS3TablesDestinationPtrOutput) TableNamespace() pulumi.StringPtrOutput { - return o.ApplyT(func(v *BucketS3TablesDestination) *string { - if v == nil { - return nil - } - return v.TableNamespace - }).(pulumi.StringPtrOutput) -} - // Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html). // - *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (“aws/s3“) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. // - *Directory buckets* - Your SSE-KMS configuration can only support 1 [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per directory bucket for the lifetime of the bucket. The [managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (“aws/s3“) isn't supported. @@ -14096,10 +13575,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*BucketLifecycleConfigurationPtrInput)(nil)).Elem(), BucketLifecycleConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketLoggingConfigurationInput)(nil)).Elem(), BucketLoggingConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketLoggingConfigurationPtrInput)(nil)).Elem(), BucketLoggingConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketMetadataTableConfigurationInput)(nil)).Elem(), BucketMetadataTableConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketMetadataTableConfigurationPtrInput)(nil)).Elem(), BucketMetadataTableConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketMetadataTableErrorInput)(nil)).Elem(), BucketMetadataTableErrorArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketMetadataTableErrorPtrInput)(nil)).Elem(), BucketMetadataTableErrorArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketMetricsInput)(nil)).Elem(), BucketMetricsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketMetricsPtrInput)(nil)).Elem(), BucketMetricsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketMetricsConfigurationInput)(nil)).Elem(), BucketMetricsConfigurationArgs{}) @@ -14151,8 +13626,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*BucketRuleArrayInput)(nil)).Elem(), BucketRuleArray{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketS3KeyFilterInput)(nil)).Elem(), BucketS3KeyFilterArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketS3KeyFilterPtrInput)(nil)).Elem(), BucketS3KeyFilterArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketS3TablesDestinationInput)(nil)).Elem(), BucketS3TablesDestinationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketS3TablesDestinationPtrInput)(nil)).Elem(), BucketS3TablesDestinationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketServerSideEncryptionByDefaultInput)(nil)).Elem(), BucketServerSideEncryptionByDefaultArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketServerSideEncryptionByDefaultPtrInput)(nil)).Elem(), BucketServerSideEncryptionByDefaultArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketServerSideEncryptionRuleInput)(nil)).Elem(), BucketServerSideEncryptionRuleArgs{}) @@ -14272,10 +13745,6 @@ func init() { pulumi.RegisterOutputType(BucketLifecycleConfigurationPtrOutput{}) pulumi.RegisterOutputType(BucketLoggingConfigurationOutput{}) pulumi.RegisterOutputType(BucketLoggingConfigurationPtrOutput{}) - pulumi.RegisterOutputType(BucketMetadataTableConfigurationOutput{}) - pulumi.RegisterOutputType(BucketMetadataTableConfigurationPtrOutput{}) - pulumi.RegisterOutputType(BucketMetadataTableErrorOutput{}) - pulumi.RegisterOutputType(BucketMetadataTableErrorPtrOutput{}) pulumi.RegisterOutputType(BucketMetricsOutput{}) pulumi.RegisterOutputType(BucketMetricsPtrOutput{}) pulumi.RegisterOutputType(BucketMetricsConfigurationOutput{}) @@ -14327,8 +13796,6 @@ func init() { pulumi.RegisterOutputType(BucketRuleArrayOutput{}) pulumi.RegisterOutputType(BucketS3KeyFilterOutput{}) pulumi.RegisterOutputType(BucketS3KeyFilterPtrOutput{}) - pulumi.RegisterOutputType(BucketS3TablesDestinationOutput{}) - pulumi.RegisterOutputType(BucketS3TablesDestinationPtrOutput{}) pulumi.RegisterOutputType(BucketServerSideEncryptionByDefaultOutput{}) pulumi.RegisterOutputType(BucketServerSideEncryptionByDefaultPtrOutput{}) pulumi.RegisterOutputType(BucketServerSideEncryptionRuleOutput{}) diff --git a/sdk/go/aws/s3tables/getTableBucket.go b/sdk/go/aws/s3tables/getTableBucket.go index b6bac1fe22..6f47299d6b 100644 --- a/sdk/go/aws/s3tables/getTableBucket.go +++ b/sdk/go/aws/s3tables/getTableBucket.go @@ -23,11 +23,14 @@ func LookupTableBucket(ctx *pulumi.Context, args *LookupTableBucketArgs, opts .. } type LookupTableBucketArgs struct { + // The Amazon Resource Name (ARN) of the table bucket. TableBucketArn string `pulumi:"tableBucketArn"` } type LookupTableBucketResult struct { - TableBucketArn *string `pulumi:"tableBucketArn"` + // The Amazon Resource Name (ARN) of the table bucket. + TableBucketArn *string `pulumi:"tableBucketArn"` + // The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . UnreferencedFileRemoval *TableBucketUnreferencedFileRemoval `pulumi:"unreferencedFileRemoval"` } @@ -41,6 +44,7 @@ func LookupTableBucketOutput(ctx *pulumi.Context, args LookupTableBucketOutputAr } type LookupTableBucketOutputArgs struct { + // The Amazon Resource Name (ARN) of the table bucket. TableBucketArn pulumi.StringInput `pulumi:"tableBucketArn"` } @@ -62,10 +66,12 @@ func (o LookupTableBucketResultOutput) ToLookupTableBucketResultOutputWithContex return o } +// The Amazon Resource Name (ARN) of the table bucket. func (o LookupTableBucketResultOutput) TableBucketArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupTableBucketResult) *string { return v.TableBucketArn }).(pulumi.StringPtrOutput) } +// The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . func (o LookupTableBucketResultOutput) UnreferencedFileRemoval() TableBucketUnreferencedFileRemovalPtrOutput { return o.ApplyT(func(v LookupTableBucketResult) *TableBucketUnreferencedFileRemoval { return v.UnreferencedFileRemoval }).(TableBucketUnreferencedFileRemovalPtrOutput) } diff --git a/sdk/go/aws/s3tables/getTableBucketPolicy.go b/sdk/go/aws/s3tables/getTableBucketPolicy.go index 1c8a524b40..6d898ca228 100644 --- a/sdk/go/aws/s3tables/getTableBucketPolicy.go +++ b/sdk/go/aws/s3tables/getTableBucketPolicy.go @@ -23,10 +23,12 @@ func LookupTableBucketPolicy(ctx *pulumi.Context, args *LookupTableBucketPolicyA } type LookupTableBucketPolicyArgs struct { + // The Amazon Resource Name (ARN) of the table bucket. TableBucketArn string `pulumi:"tableBucketArn"` } type LookupTableBucketPolicyResult struct { + // The bucket policy JSON for the table bucket. ResourcePolicy *TableBucketPolicyResourcePolicy `pulumi:"resourcePolicy"` } @@ -40,6 +42,7 @@ func LookupTableBucketPolicyOutput(ctx *pulumi.Context, args LookupTableBucketPo } type LookupTableBucketPolicyOutputArgs struct { + // The Amazon Resource Name (ARN) of the table bucket. TableBucketArn pulumi.StringInput `pulumi:"tableBucketArn"` } @@ -61,6 +64,7 @@ func (o LookupTableBucketPolicyResultOutput) ToLookupTableBucketPolicyResultOutp return o } +// The bucket policy JSON for the table bucket. func (o LookupTableBucketPolicyResultOutput) ResourcePolicy() TableBucketPolicyResourcePolicyPtrOutput { return o.ApplyT(func(v LookupTableBucketPolicyResult) *TableBucketPolicyResourcePolicy { return v.ResourcePolicy }).(TableBucketPolicyResourcePolicyPtrOutput) } diff --git a/sdk/go/aws/s3tables/tableBucket.go b/sdk/go/aws/s3tables/tableBucket.go index dc673a5403..1324145e4e 100644 --- a/sdk/go/aws/s3tables/tableBucket.go +++ b/sdk/go/aws/s3tables/tableBucket.go @@ -15,8 +15,11 @@ import ( type TableBucket struct { pulumi.CustomResourceState - TableBucketArn pulumi.StringOutput `pulumi:"tableBucketArn"` - TableBucketName pulumi.StringOutput `pulumi:"tableBucketName"` + // The Amazon Resource Name (ARN) of the table bucket. + TableBucketArn pulumi.StringOutput `pulumi:"tableBucketArn"` + // The name for the table bucket. + TableBucketName pulumi.StringOutput `pulumi:"tableBucketName"` + // The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . UnreferencedFileRemoval TableBucketUnreferencedFileRemovalPtrOutput `pulumi:"unreferencedFileRemoval"` } @@ -64,13 +67,17 @@ func (TableBucketState) ElementType() reflect.Type { } type tableBucketArgs struct { - TableBucketName *string `pulumi:"tableBucketName"` + // The name for the table bucket. + TableBucketName *string `pulumi:"tableBucketName"` + // The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . UnreferencedFileRemoval *TableBucketUnreferencedFileRemoval `pulumi:"unreferencedFileRemoval"` } // The set of arguments for constructing a TableBucket resource. type TableBucketArgs struct { - TableBucketName pulumi.StringPtrInput + // The name for the table bucket. + TableBucketName pulumi.StringPtrInput + // The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . UnreferencedFileRemoval TableBucketUnreferencedFileRemovalPtrInput } @@ -111,14 +118,17 @@ func (o TableBucketOutput) ToTableBucketOutputWithContext(ctx context.Context) T return o } +// The Amazon Resource Name (ARN) of the table bucket. func (o TableBucketOutput) TableBucketArn() pulumi.StringOutput { return o.ApplyT(func(v *TableBucket) pulumi.StringOutput { return v.TableBucketArn }).(pulumi.StringOutput) } +// The name for the table bucket. func (o TableBucketOutput) TableBucketName() pulumi.StringOutput { return o.ApplyT(func(v *TableBucket) pulumi.StringOutput { return v.TableBucketName }).(pulumi.StringOutput) } +// The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . func (o TableBucketOutput) UnreferencedFileRemoval() TableBucketUnreferencedFileRemovalPtrOutput { return o.ApplyT(func(v *TableBucket) TableBucketUnreferencedFileRemovalPtrOutput { return v.UnreferencedFileRemoval }).(TableBucketUnreferencedFileRemovalPtrOutput) } diff --git a/sdk/go/aws/s3tables/tableBucketPolicy.go b/sdk/go/aws/s3tables/tableBucketPolicy.go index 6f4b7b20d0..f3854198e2 100644 --- a/sdk/go/aws/s3tables/tableBucketPolicy.go +++ b/sdk/go/aws/s3tables/tableBucketPolicy.go @@ -16,8 +16,10 @@ import ( type TableBucketPolicy struct { pulumi.CustomResourceState + // The bucket policy JSON for the table bucket. ResourcePolicy TableBucketPolicyResourcePolicyOutput `pulumi:"resourcePolicy"` - TableBucketArn pulumi.StringOutput `pulumi:"tableBucketArn"` + // The Amazon Resource Name (ARN) of the table bucket. + TableBucketArn pulumi.StringOutput `pulumi:"tableBucketArn"` } // NewTableBucketPolicy registers a new resource with the given unique name, arguments, and options. @@ -70,13 +72,17 @@ func (TableBucketPolicyState) ElementType() reflect.Type { } type tableBucketPolicyArgs struct { + // The bucket policy JSON for the table bucket. ResourcePolicy TableBucketPolicyResourcePolicy `pulumi:"resourcePolicy"` - TableBucketArn string `pulumi:"tableBucketArn"` + // The Amazon Resource Name (ARN) of the table bucket. + TableBucketArn string `pulumi:"tableBucketArn"` } // The set of arguments for constructing a TableBucketPolicy resource. type TableBucketPolicyArgs struct { + // The bucket policy JSON for the table bucket. ResourcePolicy TableBucketPolicyResourcePolicyInput + // The Amazon Resource Name (ARN) of the table bucket. TableBucketArn pulumi.StringInput } @@ -117,10 +123,12 @@ func (o TableBucketPolicyOutput) ToTableBucketPolicyOutputWithContext(ctx contex return o } +// The bucket policy JSON for the table bucket. func (o TableBucketPolicyOutput) ResourcePolicy() TableBucketPolicyResourcePolicyOutput { return o.ApplyT(func(v *TableBucketPolicy) TableBucketPolicyResourcePolicyOutput { return v.ResourcePolicy }).(TableBucketPolicyResourcePolicyOutput) } +// The Amazon Resource Name (ARN) of the table bucket. func (o TableBucketPolicyOutput) TableBucketArn() pulumi.StringOutput { return o.ApplyT(func(v *TableBucketPolicy) pulumi.StringOutput { return v.TableBucketArn }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/sagemaker/pulumiTypes.go b/sdk/go/aws/sagemaker/pulumiTypes.go index 6fb093a1b0..b945e62741 100644 --- a/sdk/go/aws/sagemaker/pulumiTypes.go +++ b/sdk/go/aws/sagemaker/pulumiTypes.go @@ -5671,7 +5671,7 @@ func (o DomainDefaultEbsStorageSettingsPtrOutput) MaximumEbsVolumeSizeInGb() pul // A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called. type DomainDefaultSpaceSettings struct { - // The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + // The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. CustomFileSystemConfigs []DomainCustomFileSystemConfig `pulumi:"customFileSystemConfigs"` // The Jupyter lab's custom posix user configurations. CustomPosixUserConfig *DomainCustomPosixUserConfig `pulumi:"customPosixUserConfig"` @@ -5702,7 +5702,7 @@ type DomainDefaultSpaceSettingsInput interface { // A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called. type DomainDefaultSpaceSettingsArgs struct { - // The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + // The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. CustomFileSystemConfigs DomainCustomFileSystemConfigArrayInput `pulumi:"customFileSystemConfigs"` // The Jupyter lab's custom posix user configurations. CustomPosixUserConfig DomainCustomPosixUserConfigPtrInput `pulumi:"customPosixUserConfig"` @@ -5798,7 +5798,7 @@ func (o DomainDefaultSpaceSettingsOutput) ToDomainDefaultSpaceSettingsPtrOutputW }).(DomainDefaultSpaceSettingsPtrOutput) } -// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. +// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. func (o DomainDefaultSpaceSettingsOutput) CustomFileSystemConfigs() DomainCustomFileSystemConfigArrayOutput { return o.ApplyT(func(v DomainDefaultSpaceSettings) []DomainCustomFileSystemConfig { return v.CustomFileSystemConfigs }).(DomainCustomFileSystemConfigArrayOutput) } @@ -5862,7 +5862,7 @@ func (o DomainDefaultSpaceSettingsPtrOutput) Elem() DomainDefaultSpaceSettingsOu }).(DomainDefaultSpaceSettingsOutput) } -// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. +// The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. func (o DomainDefaultSpaceSettingsPtrOutput) CustomFileSystemConfigs() DomainCustomFileSystemConfigArrayOutput { return o.ApplyT(func(v *DomainDefaultSpaceSettings) []DomainCustomFileSystemConfig { if v == nil { @@ -6246,7 +6246,7 @@ func (o DomainDockerSettingsPtrOutput) VpcOnlyTrustedAccounts() pulumi.StringArr type DomainEfsFileSystemConfig struct { // The ID of your Amazon EFS file system. FileSystemId string `pulumi:"fileSystemId"` - // The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + // The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. FileSystemPath *string `pulumi:"fileSystemPath"` } @@ -6264,7 +6264,7 @@ type DomainEfsFileSystemConfigInput interface { type DomainEfsFileSystemConfigArgs struct { // The ID of your Amazon EFS file system. FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` - // The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + // The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. FileSystemPath pulumi.StringPtrInput `pulumi:"fileSystemPath"` } @@ -6350,7 +6350,7 @@ func (o DomainEfsFileSystemConfigOutput) FileSystemId() pulumi.StringOutput { return o.ApplyT(func(v DomainEfsFileSystemConfig) string { return v.FileSystemId }).(pulumi.StringOutput) } -// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. +// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. func (o DomainEfsFileSystemConfigOutput) FileSystemPath() pulumi.StringPtrOutput { return o.ApplyT(func(v DomainEfsFileSystemConfig) *string { return v.FileSystemPath }).(pulumi.StringPtrOutput) } @@ -6389,7 +6389,7 @@ func (o DomainEfsFileSystemConfigPtrOutput) FileSystemId() pulumi.StringPtrOutpu }).(pulumi.StringPtrOutput) } -// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. +// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. func (o DomainEfsFileSystemConfigPtrOutput) FileSystemPath() pulumi.StringPtrOutput { return o.ApplyT(func(v *DomainEfsFileSystemConfig) *string { if v == nil { @@ -8410,7 +8410,7 @@ type DomainUserSettings struct { // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CodeEditorAppSettings *DomainCodeEditorAppSettings `pulumi:"codeEditorAppSettings"` - // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CustomFileSystemConfigs []DomainCustomFileSystemConfig `pulumi:"customFileSystemConfigs"` @@ -8465,7 +8465,7 @@ type DomainUserSettingsArgs struct { // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CodeEditorAppSettings DomainCodeEditorAppSettingsPtrInput `pulumi:"codeEditorAppSettings"` - // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CustomFileSystemConfigs DomainCustomFileSystemConfigArrayInput `pulumi:"customFileSystemConfigs"` @@ -8537,7 +8537,7 @@ func (o DomainUserSettingsOutput) CodeEditorAppSettings() DomainCodeEditorAppSet return o.ApplyT(func(v DomainUserSettings) *DomainCodeEditorAppSettings { return v.CodeEditorAppSettings }).(DomainCodeEditorAppSettingsPtrOutput) } -// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. +// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. func (o DomainUserSettingsOutput) CustomFileSystemConfigs() DomainCustomFileSystemConfigArrayOutput { @@ -8651,7 +8651,7 @@ func (o DomainUserSettingsPtrOutput) CodeEditorAppSettings() DomainCodeEditorApp }).(DomainCodeEditorAppSettingsPtrOutput) } -// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. +// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. func (o DomainUserSettingsPtrOutput) CustomFileSystemConfigs() DomainCustomFileSystemConfigArrayOutput { @@ -11817,7 +11817,7 @@ type InferenceComponentSpecification struct { ComputeResourceRequirements *InferenceComponentComputeResourceRequirements `pulumi:"computeResourceRequirements"` // Defines a container that provides the runtime environment for a model that you deploy with an inference component. Container *InferenceComponentContainerSpecification `pulumi:"container"` - // The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + // The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. ModelName *string `pulumi:"modelName"` // Settings that take effect while the model container starts up. StartupParameters *InferenceComponentStartupParameters `pulumi:"startupParameters"` @@ -11850,7 +11850,7 @@ type InferenceComponentSpecificationArgs struct { ComputeResourceRequirements InferenceComponentComputeResourceRequirementsPtrInput `pulumi:"computeResourceRequirements"` // Defines a container that provides the runtime environment for a model that you deploy with an inference component. Container InferenceComponentContainerSpecificationPtrInput `pulumi:"container"` - // The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + // The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. ModelName pulumi.StringPtrInput `pulumi:"modelName"` // Settings that take effect while the model container starts up. StartupParameters InferenceComponentStartupParametersPtrInput `pulumi:"startupParameters"` @@ -11908,7 +11908,7 @@ func (o InferenceComponentSpecificationOutput) Container() InferenceComponentCon return o.ApplyT(func(v InferenceComponentSpecification) *InferenceComponentContainerSpecification { return v.Container }).(InferenceComponentContainerSpecificationPtrOutput) } -// The name of an existing SageMaker model object in your account that you want to deploy with the inference component. +// The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. func (o InferenceComponentSpecificationOutput) ModelName() pulumi.StringPtrOutput { return o.ApplyT(func(v InferenceComponentSpecification) *string { return v.ModelName }).(pulumi.StringPtrOutput) } @@ -11982,7 +11982,7 @@ func (o InferenceComponentSpecificationPtrOutput) Container() InferenceComponent }).(InferenceComponentContainerSpecificationPtrOutput) } -// The name of an existing SageMaker model object in your account that you want to deploy with the inference component. +// The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. func (o InferenceComponentSpecificationPtrOutput) ModelName() pulumi.StringPtrOutput { return o.ApplyT(func(v *InferenceComponentSpecification) *string { if v == nil { @@ -19580,11 +19580,11 @@ func (o ModelCardTrainingHyperParameterArrayOutput) Index(i pulumi.IntInput) Mod // training metric data. type ModelCardTrainingMetric struct { - // The name of the result from the SageMaker training job. + // The name of the result from the SageMaker AI training job. Name string `pulumi:"name"` // Any additional notes describing the result of the training job. Notes *string `pulumi:"notes"` - // The value of a result from the SageMaker training job. + // The value of a result from the SageMaker AI training job. Value float64 `pulumi:"value"` } @@ -19601,11 +19601,11 @@ type ModelCardTrainingMetricInput interface { // training metric data. type ModelCardTrainingMetricArgs struct { - // The name of the result from the SageMaker training job. + // The name of the result from the SageMaker AI training job. Name pulumi.StringInput `pulumi:"name"` // Any additional notes describing the result of the training job. Notes pulumi.StringPtrInput `pulumi:"notes"` - // The value of a result from the SageMaker training job. + // The value of a result from the SageMaker AI training job. Value pulumi.Float64Input `pulumi:"value"` } @@ -19661,7 +19661,7 @@ func (o ModelCardTrainingMetricOutput) ToModelCardTrainingMetricOutputWithContex return o } -// The name of the result from the SageMaker training job. +// The name of the result from the SageMaker AI training job. func (o ModelCardTrainingMetricOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v ModelCardTrainingMetric) string { return v.Name }).(pulumi.StringOutput) } @@ -19671,7 +19671,7 @@ func (o ModelCardTrainingMetricOutput) Notes() pulumi.StringPtrOutput { return o.ApplyT(func(v ModelCardTrainingMetric) *string { return v.Notes }).(pulumi.StringPtrOutput) } -// The value of a result from the SageMaker training job. +// The value of a result from the SageMaker AI training job. func (o ModelCardTrainingMetricOutput) Value() pulumi.Float64Output { return o.ApplyT(func(v ModelCardTrainingMetric) float64 { return v.Value }).(pulumi.Float64Output) } @@ -32012,7 +32012,7 @@ type MonitoringScheduleMonitoringJobDefinition struct { Environment interface{} `pulumi:"environment"` // Configures the monitoring job to run a specified Docker container image. MonitoringAppSpecification MonitoringScheduleMonitoringAppSpecification `pulumi:"monitoringAppSpecification"` - // The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + // The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. MonitoringInputs []MonitoringScheduleMonitoringInput `pulumi:"monitoringInputs"` // The array of outputs from the monitoring job to be uploaded to Amazon S3. MonitoringOutputConfig MonitoringScheduleMonitoringOutputConfig `pulumi:"monitoringOutputConfig"` @@ -32045,7 +32045,7 @@ type MonitoringScheduleMonitoringJobDefinitionArgs struct { Environment pulumi.Input `pulumi:"environment"` // Configures the monitoring job to run a specified Docker container image. MonitoringAppSpecification MonitoringScheduleMonitoringAppSpecificationInput `pulumi:"monitoringAppSpecification"` - // The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + // The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. MonitoringInputs MonitoringScheduleMonitoringInputArrayInput `pulumi:"monitoringInputs"` // The array of outputs from the monitoring job to be uploaded to Amazon S3. MonitoringOutputConfig MonitoringScheduleMonitoringOutputConfigInput `pulumi:"monitoringOutputConfig"` @@ -32156,7 +32156,7 @@ func (o MonitoringScheduleMonitoringJobDefinitionOutput) MonitoringAppSpecificat }).(MonitoringScheduleMonitoringAppSpecificationOutput) } -// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. +// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. func (o MonitoringScheduleMonitoringJobDefinitionOutput) MonitoringInputs() MonitoringScheduleMonitoringInputArrayOutput { return o.ApplyT(func(v MonitoringScheduleMonitoringJobDefinition) []MonitoringScheduleMonitoringInput { return v.MonitoringInputs @@ -32250,7 +32250,7 @@ func (o MonitoringScheduleMonitoringJobDefinitionPtrOutput) MonitoringAppSpecifi }).(MonitoringScheduleMonitoringAppSpecificationPtrOutput) } -// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. +// The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. func (o MonitoringScheduleMonitoringJobDefinitionPtrOutput) MonitoringInputs() MonitoringScheduleMonitoringInputArrayOutput { return o.ApplyT(func(v *MonitoringScheduleMonitoringJobDefinition) []MonitoringScheduleMonitoringInput { if v == nil { @@ -36358,7 +36358,7 @@ func (o SpaceJupyterLabAppSettingsPtrOutput) DefaultResourceSpec() SpaceResource // The JupyterServer app settings. type SpaceJupyterServerAppSettings struct { - // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. DefaultResourceSpec *SpaceResourceSpec `pulumi:"defaultResourceSpec"` // A list of LifecycleConfigArns available for use with JupyterServer apps. LifecycleConfigArns []string `pulumi:"lifecycleConfigArns"` @@ -36377,7 +36377,7 @@ type SpaceJupyterServerAppSettingsInput interface { // The JupyterServer app settings. type SpaceJupyterServerAppSettingsArgs struct { - // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. DefaultResourceSpec SpaceResourceSpecPtrInput `pulumi:"defaultResourceSpec"` // A list of LifecycleConfigArns available for use with JupyterServer apps. LifecycleConfigArns pulumi.StringArrayInput `pulumi:"lifecycleConfigArns"` @@ -36461,7 +36461,7 @@ func (o SpaceJupyterServerAppSettingsOutput) ToSpaceJupyterServerAppSettingsPtrO }).(SpaceJupyterServerAppSettingsPtrOutput) } -// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. func (o SpaceJupyterServerAppSettingsOutput) DefaultResourceSpec() SpaceResourceSpecPtrOutput { return o.ApplyT(func(v SpaceJupyterServerAppSettings) *SpaceResourceSpec { return v.DefaultResourceSpec }).(SpaceResourceSpecPtrOutput) } @@ -36495,7 +36495,7 @@ func (o SpaceJupyterServerAppSettingsPtrOutput) Elem() SpaceJupyterServerAppSett }).(SpaceJupyterServerAppSettingsOutput) } -// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. func (o SpaceJupyterServerAppSettingsPtrOutput) DefaultResourceSpec() SpaceResourceSpecPtrOutput { return o.ApplyT(func(v *SpaceJupyterServerAppSettings) *SpaceResourceSpec { if v == nil { @@ -37030,7 +37030,7 @@ type SpaceSettings struct { AppType *SpaceAppType `pulumi:"appType"` // The CodeEditor app settings. CodeEditorAppSettings *SpaceCodeEditorAppSettings `pulumi:"codeEditorAppSettings"` - // A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + // A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. CustomFileSystems []SpaceCustomFileSystem `pulumi:"customFileSystems"` // The JupyterLab app settings. JupyterLabAppSettings *SpaceJupyterLabAppSettings `pulumi:"jupyterLabAppSettings"` @@ -37059,7 +37059,7 @@ type SpaceSettingsArgs struct { AppType SpaceAppTypePtrInput `pulumi:"appType"` // The CodeEditor app settings. CodeEditorAppSettings SpaceCodeEditorAppSettingsPtrInput `pulumi:"codeEditorAppSettings"` - // A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + // A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. CustomFileSystems SpaceCustomFileSystemArrayInput `pulumi:"customFileSystems"` // The JupyterLab app settings. JupyterLabAppSettings SpaceJupyterLabAppSettingsPtrInput `pulumi:"jupyterLabAppSettings"` @@ -37159,7 +37159,7 @@ func (o SpaceSettingsOutput) CodeEditorAppSettings() SpaceCodeEditorAppSettingsP return o.ApplyT(func(v SpaceSettings) *SpaceCodeEditorAppSettings { return v.CodeEditorAppSettings }).(SpaceCodeEditorAppSettingsPtrOutput) } -// A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. +// A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. func (o SpaceSettingsOutput) CustomFileSystems() SpaceCustomFileSystemArrayOutput { return o.ApplyT(func(v SpaceSettings) []SpaceCustomFileSystem { return v.CustomFileSystems }).(SpaceCustomFileSystemArrayOutput) } @@ -37228,7 +37228,7 @@ func (o SpaceSettingsPtrOutput) CodeEditorAppSettings() SpaceCodeEditorAppSettin }).(SpaceCodeEditorAppSettingsPtrOutput) } -// A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. +// A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. func (o SpaceSettingsPtrOutput) CustomFileSystems() SpaceCustomFileSystemArrayOutput { return o.ApplyT(func(v *SpaceSettings) []SpaceCustomFileSystem { if v == nil { @@ -38676,7 +38676,7 @@ func (o UserProfileDefaultSpaceStorageSettingsPtrOutput) DefaultEbsStorageSettin type UserProfileEfsFileSystemConfig struct { // The ID of your Amazon EFS file system. FileSystemId string `pulumi:"fileSystemId"` - // The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + // The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. FileSystemPath *string `pulumi:"fileSystemPath"` } @@ -38694,7 +38694,7 @@ type UserProfileEfsFileSystemConfigInput interface { type UserProfileEfsFileSystemConfigArgs struct { // The ID of your Amazon EFS file system. FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` - // The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + // The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. FileSystemPath pulumi.StringPtrInput `pulumi:"fileSystemPath"` } @@ -38780,7 +38780,7 @@ func (o UserProfileEfsFileSystemConfigOutput) FileSystemId() pulumi.StringOutput return o.ApplyT(func(v UserProfileEfsFileSystemConfig) string { return v.FileSystemId }).(pulumi.StringOutput) } -// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. +// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. func (o UserProfileEfsFileSystemConfigOutput) FileSystemPath() pulumi.StringPtrOutput { return o.ApplyT(func(v UserProfileEfsFileSystemConfig) *string { return v.FileSystemPath }).(pulumi.StringPtrOutput) } @@ -38819,7 +38819,7 @@ func (o UserProfileEfsFileSystemConfigPtrOutput) FileSystemId() pulumi.StringPtr }).(pulumi.StringPtrOutput) } -// The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. +// The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. func (o UserProfileEfsFileSystemConfigPtrOutput) FileSystemPath() pulumi.StringPtrOutput { return o.ApplyT(func(v *UserProfileEfsFileSystemConfig) *string { if v == nil { @@ -40287,7 +40287,7 @@ type UserProfileUserSettings struct { // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CodeEditorAppSettings *UserProfileCodeEditorAppSettings `pulumi:"codeEditorAppSettings"` - // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CustomFileSystemConfigs []UserProfileCustomFileSystemConfig `pulumi:"customFileSystemConfigs"` @@ -40340,7 +40340,7 @@ type UserProfileUserSettingsArgs struct { // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CodeEditorAppSettings UserProfileCodeEditorAppSettingsPtrInput `pulumi:"codeEditorAppSettings"` - // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + // The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. CustomFileSystemConfigs UserProfileCustomFileSystemConfigArrayInput `pulumi:"customFileSystemConfigs"` @@ -40461,7 +40461,7 @@ func (o UserProfileUserSettingsOutput) CodeEditorAppSettings() UserProfileCodeEd return o.ApplyT(func(v UserProfileUserSettings) *UserProfileCodeEditorAppSettings { return v.CodeEditorAppSettings }).(UserProfileCodeEditorAppSettingsPtrOutput) } -// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. +// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. func (o UserProfileUserSettingsOutput) CustomFileSystemConfigs() UserProfileCustomFileSystemConfigArrayOutput { @@ -40576,7 +40576,7 @@ func (o UserProfileUserSettingsPtrOutput) CodeEditorAppSettings() UserProfileCod }).(UserProfileCodeEditorAppSettingsPtrOutput) } -// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. +// The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. // // SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. func (o UserProfileUserSettingsPtrOutput) CustomFileSystemConfigs() UserProfileCustomFileSystemConfigArrayOutput { diff --git a/sdk/go/aws/transfer/getServer.go b/sdk/go/aws/transfer/getServer.go index 503d33633f..8faa9df120 100644 --- a/sdk/go/aws/transfer/getServer.go +++ b/sdk/go/aws/transfer/getServer.go @@ -114,7 +114,8 @@ type LookupServerResult struct { // The service-assigned ID of the server that is created. // // An example `ServerId` is `s-01234567890abcdef` . - ServerId *string `pulumi:"serverId"` + ServerId *string `pulumi:"serverId"` + State *ServerStateEnum `pulumi:"state"` // Specifies the log groups to which your server logs are sent. // // To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows: @@ -295,6 +296,10 @@ func (o LookupServerResultOutput) ServerId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupServerResult) *string { return v.ServerId }).(pulumi.StringPtrOutput) } +func (o LookupServerResultOutput) State() ServerStateEnumPtrOutput { + return o.ApplyT(func(v LookupServerResult) *ServerStateEnum { return v.State }).(ServerStateEnumPtrOutput) +} + // Specifies the log groups to which your server logs are sent. // // To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows: diff --git a/sdk/go/aws/transfer/pulumiEnums.go b/sdk/go/aws/transfer/pulumiEnums.go index 772f5d2901..7b5ab7899f 100644 --- a/sdk/go/aws/transfer/pulumiEnums.go +++ b/sdk/go/aws/transfer/pulumiEnums.go @@ -2966,6 +2966,100 @@ func (in *serverSftpAuthenticationMethodsPtr) ToServerSftpAuthenticationMethodsP return pulumi.ToOutputWithContext(ctx, in).(ServerSftpAuthenticationMethodsPtrOutput) } +type ServerStateEnum string + +const ( + ServerStateEnumOffline = ServerStateEnum("OFFLINE") + ServerStateEnumOnline = ServerStateEnum("ONLINE") + ServerStateEnumStarting = ServerStateEnum("STARTING") + ServerStateEnumStopping = ServerStateEnum("STOPPING") + ServerStateEnumStartFailed = ServerStateEnum("START_FAILED") + ServerStateEnumStopFailed = ServerStateEnum("STOP_FAILED") +) + +type ServerStateEnumOutput struct{ *pulumi.OutputState } + +func (ServerStateEnumOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ServerStateEnum)(nil)).Elem() +} + +func (o ServerStateEnumOutput) ToServerStateEnumOutput() ServerStateEnumOutput { + return o +} + +func (o ServerStateEnumOutput) ToServerStateEnumOutputWithContext(ctx context.Context) ServerStateEnumOutput { + return o +} + +func (o ServerStateEnumOutput) ToServerStateEnumPtrOutput() ServerStateEnumPtrOutput { + return o.ToServerStateEnumPtrOutputWithContext(context.Background()) +} + +func (o ServerStateEnumOutput) ToServerStateEnumPtrOutputWithContext(ctx context.Context) ServerStateEnumPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ServerStateEnum) *ServerStateEnum { + return &v + }).(ServerStateEnumPtrOutput) +} + +func (o ServerStateEnumOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ServerStateEnumOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ServerStateEnum) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ServerStateEnumOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ServerStateEnumOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ServerStateEnum) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ServerStateEnumPtrOutput struct{ *pulumi.OutputState } + +func (ServerStateEnumPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ServerStateEnum)(nil)).Elem() +} + +func (o ServerStateEnumPtrOutput) ToServerStateEnumPtrOutput() ServerStateEnumPtrOutput { + return o +} + +func (o ServerStateEnumPtrOutput) ToServerStateEnumPtrOutputWithContext(ctx context.Context) ServerStateEnumPtrOutput { + return o +} + +func (o ServerStateEnumPtrOutput) Elem() ServerStateEnumOutput { + return o.ApplyT(func(v *ServerStateEnum) ServerStateEnum { + if v != nil { + return *v + } + var ret ServerStateEnum + return ret + }).(ServerStateEnumOutput) +} + +func (o ServerStateEnumPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ServerStateEnumPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ServerStateEnum) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + type ServerTlsSessionResumptionMode string const ( @@ -4217,6 +4311,8 @@ func init() { pulumi.RegisterOutputType(ServerSetStatOptionPtrOutput{}) pulumi.RegisterOutputType(ServerSftpAuthenticationMethodsOutput{}) pulumi.RegisterOutputType(ServerSftpAuthenticationMethodsPtrOutput{}) + pulumi.RegisterOutputType(ServerStateEnumOutput{}) + pulumi.RegisterOutputType(ServerStateEnumPtrOutput{}) pulumi.RegisterOutputType(ServerTlsSessionResumptionModeOutput{}) pulumi.RegisterOutputType(ServerTlsSessionResumptionModePtrOutput{}) pulumi.RegisterOutputType(UserHomeDirectoryTypeOutput{}) diff --git a/sdk/go/aws/transfer/server.go b/sdk/go/aws/transfer/server.go index d2f857a37c..3ad2c61db2 100644 --- a/sdk/go/aws/transfer/server.go +++ b/sdk/go/aws/transfer/server.go @@ -391,7 +391,8 @@ type Server struct { // The service-assigned ID of the server that is created. // // An example `ServerId` is `s-01234567890abcdef` . - ServerId pulumi.StringOutput `pulumi:"serverId"` + ServerId pulumi.StringOutput `pulumi:"serverId"` + State ServerStateEnumOutput `pulumi:"state"` // Specifies the log groups to which your server logs are sent. // // To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows: @@ -846,6 +847,10 @@ func (o ServerOutput) ServerId() pulumi.StringOutput { return o.ApplyT(func(v *Server) pulumi.StringOutput { return v.ServerId }).(pulumi.StringOutput) } +func (o ServerOutput) State() ServerStateEnumOutput { + return o.ApplyT(func(v *Server) ServerStateEnumOutput { return v.State }).(ServerStateEnumOutput) +} + // Specifies the log groups to which your server logs are sent. // // To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows: diff --git a/sdk/go/aws/vpclattice/getResourceConfiguration.go b/sdk/go/aws/vpclattice/getResourceConfiguration.go index bc6b336ca6..ac6dbf41ae 100644 --- a/sdk/go/aws/vpclattice/getResourceConfiguration.go +++ b/sdk/go/aws/vpclattice/getResourceConfiguration.go @@ -24,17 +24,29 @@ func LookupResourceConfiguration(ctx *pulumi.Context, args *LookupResourceConfig } type LookupResourceConfigurationArgs struct { + // The Amazon Resource Name (ARN) of the resource configuration. Arn string `pulumi:"arn"` } type LookupResourceConfigurationResult struct { - AllowAssociationToSharableServiceNetwork *bool `pulumi:"allowAssociationToSharableServiceNetwork"` - Arn *string `pulumi:"arn"` - Id *string `pulumi:"id"` - Name *string `pulumi:"name"` - PortRanges []string `pulumi:"portRanges"` - ResourceConfigurationDefinition interface{} `pulumi:"resourceConfigurationDefinition"` - Tags []aws.Tag `pulumi:"tags"` + // Specifies whether the resource configuration can be associated with a sharable service network. + AllowAssociationToSharableServiceNetwork *bool `pulumi:"allowAssociationToSharableServiceNetwork"` + // The Amazon Resource Name (ARN) of the resource configuration. + Arn *string `pulumi:"arn"` + // The ID of the resource configuration. + Id *string `pulumi:"id"` + // The name of the resource configuration. + Name *string `pulumi:"name"` + // (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + PortRanges []string `pulumi:"portRanges"` + // Identifies the resource configuration in one of the following ways: + // + // - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + // - *Domain name* - Any domain name that is publicly resolvable. + // - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + ResourceConfigurationDefinition interface{} `pulumi:"resourceConfigurationDefinition"` + // The tags for the resource configuration. + Tags []aws.Tag `pulumi:"tags"` } func LookupResourceConfigurationOutput(ctx *pulumi.Context, args LookupResourceConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupResourceConfigurationResultOutput { @@ -47,6 +59,7 @@ func LookupResourceConfigurationOutput(ctx *pulumi.Context, args LookupResourceC } type LookupResourceConfigurationOutputArgs struct { + // The Amazon Resource Name (ARN) of the resource configuration. Arn pulumi.StringInput `pulumi:"arn"` } @@ -68,30 +81,41 @@ func (o LookupResourceConfigurationResultOutput) ToLookupResourceConfigurationRe return o } +// Specifies whether the resource configuration can be associated with a sharable service network. func (o LookupResourceConfigurationResultOutput) AllowAssociationToSharableServiceNetwork() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupResourceConfigurationResult) *bool { return v.AllowAssociationToSharableServiceNetwork }).(pulumi.BoolPtrOutput) } +// The Amazon Resource Name (ARN) of the resource configuration. func (o LookupResourceConfigurationResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupResourceConfigurationResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } +// The ID of the resource configuration. func (o LookupResourceConfigurationResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupResourceConfigurationResult) *string { return v.Id }).(pulumi.StringPtrOutput) } +// The name of the resource configuration. func (o LookupResourceConfigurationResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupResourceConfigurationResult) *string { return v.Name }).(pulumi.StringPtrOutput) } +// (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). func (o LookupResourceConfigurationResultOutput) PortRanges() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupResourceConfigurationResult) []string { return v.PortRanges }).(pulumi.StringArrayOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. func (o LookupResourceConfigurationResultOutput) ResourceConfigurationDefinition() pulumi.AnyOutput { return o.ApplyT(func(v LookupResourceConfigurationResult) interface{} { return v.ResourceConfigurationDefinition }).(pulumi.AnyOutput) } +// The tags for the resource configuration. func (o LookupResourceConfigurationResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupResourceConfigurationResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/vpclattice/getResourceGateway.go b/sdk/go/aws/vpclattice/getResourceGateway.go index 413fddc3a8..7928af24b4 100644 --- a/sdk/go/aws/vpclattice/getResourceGateway.go +++ b/sdk/go/aws/vpclattice/getResourceGateway.go @@ -24,15 +24,19 @@ func LookupResourceGateway(ctx *pulumi.Context, args *LookupResourceGatewayArgs, } type LookupResourceGatewayArgs struct { + // The Amazon Resource Name (ARN) of the resource gateway. Arn string `pulumi:"arn"` } type LookupResourceGatewayResult struct { + // The Amazon Resource Name (ARN) of the resource gateway. Arn *string `pulumi:"arn"` - Id *string `pulumi:"id"` + // The ID of the resource gateway. + Id *string `pulumi:"id"` // The ID of one or more security groups to associate with the endpoint network interface. - SecurityGroupIds []string `pulumi:"securityGroupIds"` - Tags []aws.Tag `pulumi:"tags"` + SecurityGroupIds []string `pulumi:"securityGroupIds"` + // The tags for the resource gateway. + Tags []aws.Tag `pulumi:"tags"` } func LookupResourceGatewayOutput(ctx *pulumi.Context, args LookupResourceGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupResourceGatewayResultOutput { @@ -45,6 +49,7 @@ func LookupResourceGatewayOutput(ctx *pulumi.Context, args LookupResourceGateway } type LookupResourceGatewayOutputArgs struct { + // The Amazon Resource Name (ARN) of the resource gateway. Arn pulumi.StringInput `pulumi:"arn"` } @@ -66,10 +71,12 @@ func (o LookupResourceGatewayResultOutput) ToLookupResourceGatewayResultOutputWi return o } +// The Amazon Resource Name (ARN) of the resource gateway. func (o LookupResourceGatewayResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupResourceGatewayResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } +// The ID of the resource gateway. func (o LookupResourceGatewayResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupResourceGatewayResult) *string { return v.Id }).(pulumi.StringPtrOutput) } @@ -79,6 +86,7 @@ func (o LookupResourceGatewayResultOutput) SecurityGroupIds() pulumi.StringArray return o.ApplyT(func(v LookupResourceGatewayResult) []string { return v.SecurityGroupIds }).(pulumi.StringArrayOutput) } +// The tags for the resource gateway. func (o LookupResourceGatewayResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupResourceGatewayResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/vpclattice/getServiceNetwork.go b/sdk/go/aws/vpclattice/getServiceNetwork.go index 6c144d0c0e..eb4e1bcd66 100644 --- a/sdk/go/aws/vpclattice/getServiceNetwork.go +++ b/sdk/go/aws/vpclattice/getServiceNetwork.go @@ -41,7 +41,8 @@ type LookupServiceNetworkResult struct { // The ID of the service network. Id *string `pulumi:"id"` // The date and time of the last update, specified in ISO-8601 format. - LastUpdatedAt *string `pulumi:"lastUpdatedAt"` + LastUpdatedAt *string `pulumi:"lastUpdatedAt"` + // Specify if the service network should be enabled for sharing. SharingConfig *ServiceNetworkSharingConfig `pulumi:"sharingConfig"` // The tags for the service network. Tags []aws.Tag `pulumi:"tags"` @@ -107,6 +108,7 @@ func (o LookupServiceNetworkResultOutput) LastUpdatedAt() pulumi.StringPtrOutput return o.ApplyT(func(v LookupServiceNetworkResult) *string { return v.LastUpdatedAt }).(pulumi.StringPtrOutput) } +// Specify if the service network should be enabled for sharing. func (o LookupServiceNetworkResultOutput) SharingConfig() ServiceNetworkSharingConfigPtrOutput { return o.ApplyT(func(v LookupServiceNetworkResult) *ServiceNetworkSharingConfig { return v.SharingConfig }).(ServiceNetworkSharingConfigPtrOutput) } diff --git a/sdk/go/aws/vpclattice/getServiceNetworkResourceAssociation.go b/sdk/go/aws/vpclattice/getServiceNetworkResourceAssociation.go index 91d79746ee..2426721c39 100644 --- a/sdk/go/aws/vpclattice/getServiceNetworkResourceAssociation.go +++ b/sdk/go/aws/vpclattice/getServiceNetworkResourceAssociation.go @@ -24,12 +24,16 @@ func LookupServiceNetworkResourceAssociation(ctx *pulumi.Context, args *LookupSe } type LookupServiceNetworkResourceAssociationArgs struct { + // The Amazon Resource Name (ARN) of the association. Arn string `pulumi:"arn"` } type LookupServiceNetworkResourceAssociationResult struct { - Arn *string `pulumi:"arn"` - Id *string `pulumi:"id"` + // The Amazon Resource Name (ARN) of the association. + Arn *string `pulumi:"arn"` + // The ID of the association between the service network and resource configuration. + Id *string `pulumi:"id"` + // A key-value pair to associate with a resource. Tags []aws.Tag `pulumi:"tags"` } @@ -43,6 +47,7 @@ func LookupServiceNetworkResourceAssociationOutput(ctx *pulumi.Context, args Loo } type LookupServiceNetworkResourceAssociationOutputArgs struct { + // The Amazon Resource Name (ARN) of the association. Arn pulumi.StringInput `pulumi:"arn"` } @@ -64,14 +69,17 @@ func (o LookupServiceNetworkResourceAssociationResultOutput) ToLookupServiceNetw return o } +// The Amazon Resource Name (ARN) of the association. func (o LookupServiceNetworkResourceAssociationResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupServiceNetworkResourceAssociationResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } +// The ID of the association between the service network and resource configuration. func (o LookupServiceNetworkResourceAssociationResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupServiceNetworkResourceAssociationResult) *string { return v.Id }).(pulumi.StringPtrOutput) } +// A key-value pair to associate with a resource. func (o LookupServiceNetworkResourceAssociationResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupServiceNetworkResourceAssociationResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/vpclattice/pulumiEnums.go b/sdk/go/aws/vpclattice/pulumiEnums.go index f8d9cf34d3..3137753225 100644 --- a/sdk/go/aws/vpclattice/pulumiEnums.go +++ b/sdk/go/aws/vpclattice/pulumiEnums.go @@ -435,6 +435,7 @@ func (in *listenerProtocolPtr) ToListenerProtocolPtrOutputWithContext(ctx contex return pulumi.ToOutputWithContext(ctx, in).(ListenerProtocolPtrOutput) } +// The auth type for the resource configuration. type ResourceConfigurationAuthType string const ( @@ -767,6 +768,7 @@ func (in *resourceConfigurationDnsResourceIpAddressTypePtr) ToResourceConfigurat return pulumi.ToOutputWithContext(ctx, in).(ResourceConfigurationDnsResourceIpAddressTypePtrOutput) } +// (SINGLE, GROUP) The protocol accepted by the resource configuration. type ResourceConfigurationProtocolType string const ( @@ -930,6 +932,12 @@ func (in *resourceConfigurationProtocolTypePtr) ToResourceConfigurationProtocolT return pulumi.ToOutputWithContext(ctx, in).(ResourceConfigurationProtocolTypePtrOutput) } +// The type of resource configuration. A resource configuration can be one of the following types: +// +// - *SINGLE* - A single resource. +// - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. +// - *CHILD* - A single resource that is part of a group resource configuration. +// - *ARN* - An AWS resource. type ResourceConfigurationType string const ( @@ -1099,6 +1107,7 @@ func (in *resourceConfigurationTypePtr) ToResourceConfigurationTypePtrOutputWith return pulumi.ToOutputWithContext(ctx, in).(ResourceConfigurationTypePtrOutput) } +// The type of IP address used by the resource gateway. type ResourceGatewayIpAddressType string const ( diff --git a/sdk/go/aws/vpclattice/pulumiTypes.go b/sdk/go/aws/vpclattice/pulumiTypes.go index 3d6f483420..93a61fd1a4 100644 --- a/sdk/go/aws/vpclattice/pulumiTypes.go +++ b/sdk/go/aws/vpclattice/pulumiTypes.go @@ -520,6 +520,11 @@ func (o ListenerWeightedTargetGroupArrayOutput) Index(i pulumi.IntInput) Listene }).(ListenerWeightedTargetGroupOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition0Properties struct { IpResource string `pulumi:"ipResource"` } @@ -535,6 +540,11 @@ type ResourceConfigurationDefinition0PropertiesInput interface { ToResourceConfigurationDefinition0PropertiesOutputWithContext(context.Context) ResourceConfigurationDefinition0PropertiesOutput } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition0PropertiesArgs struct { IpResource pulumi.StringInput `pulumi:"ipResource"` } @@ -592,6 +602,11 @@ func (i *resourceConfigurationDefinition0PropertiesPtrType) ToResourceConfigurat return pulumi.ToOutputWithContext(ctx, i).(ResourceConfigurationDefinition0PropertiesPtrOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition0PropertiesOutput struct{ *pulumi.OutputState } func (ResourceConfigurationDefinition0PropertiesOutput) ElementType() reflect.Type { @@ -653,6 +668,11 @@ func (o ResourceConfigurationDefinition0PropertiesPtrOutput) IpResource() pulumi }).(pulumi.StringPtrOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition1Properties struct { ArnResource string `pulumi:"arnResource"` } @@ -668,6 +688,11 @@ type ResourceConfigurationDefinition1PropertiesInput interface { ToResourceConfigurationDefinition1PropertiesOutputWithContext(context.Context) ResourceConfigurationDefinition1PropertiesOutput } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition1PropertiesArgs struct { ArnResource pulumi.StringInput `pulumi:"arnResource"` } @@ -725,6 +750,11 @@ func (i *resourceConfigurationDefinition1PropertiesPtrType) ToResourceConfigurat return pulumi.ToOutputWithContext(ctx, i).(ResourceConfigurationDefinition1PropertiesPtrOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition1PropertiesOutput struct{ *pulumi.OutputState } func (ResourceConfigurationDefinition1PropertiesOutput) ElementType() reflect.Type { @@ -786,6 +816,11 @@ func (o ResourceConfigurationDefinition1PropertiesPtrOutput) ArnResource() pulum }).(pulumi.StringPtrOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition2Properties struct { DnsResource ResourceConfigurationDnsResource `pulumi:"dnsResource"` } @@ -801,6 +836,11 @@ type ResourceConfigurationDefinition2PropertiesInput interface { ToResourceConfigurationDefinition2PropertiesOutputWithContext(context.Context) ResourceConfigurationDefinition2PropertiesOutput } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition2PropertiesArgs struct { DnsResource ResourceConfigurationDnsResourceInput `pulumi:"dnsResource"` } @@ -858,6 +898,11 @@ func (i *resourceConfigurationDefinition2PropertiesPtrType) ToResourceConfigurat return pulumi.ToOutputWithContext(ctx, i).(ResourceConfigurationDefinition2PropertiesPtrOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. type ResourceConfigurationDefinition2PropertiesOutput struct{ *pulumi.OutputState } func (ResourceConfigurationDefinition2PropertiesOutput) ElementType() reflect.Type { @@ -1072,12 +1117,16 @@ func (o ResourceConfigurationDnsResourcePtrOutput) IpAddressType() ResourceConfi } type ResourceConfigurationTag struct { - Key string `pulumi:"key"` + // The tag key. + Key string `pulumi:"key"` + // The tag value. Value *string `pulumi:"value"` } type ResourceGatewayTag struct { - Key string `pulumi:"key"` + // The tag key. + Key string `pulumi:"key"` + // The tag value. Value *string `pulumi:"value"` } @@ -2446,7 +2495,9 @@ func (o ServiceDnsEntryPtrOutput) HostedZoneId() pulumi.StringPtrOutput { // A key-value pair to associate with a resource. type ServiceNetworkResourceAssociationTag struct { - Key string `pulumi:"key"` + // The tag key. + Key string `pulumi:"key"` + // A tag value. Value string `pulumi:"value"` } @@ -2614,6 +2665,7 @@ type ServiceNetworkServiceAssociationTag struct { } type ServiceNetworkSharingConfig struct { + // Specify if the service network should be enabled for sharing. Enabled bool `pulumi:"enabled"` } @@ -2629,6 +2681,7 @@ type ServiceNetworkSharingConfigInput interface { } type ServiceNetworkSharingConfigArgs struct { + // Specify if the service network should be enabled for sharing. Enabled pulumi.BoolInput `pulumi:"enabled"` } @@ -2709,6 +2762,7 @@ func (o ServiceNetworkSharingConfigOutput) ToServiceNetworkSharingConfigPtrOutpu }).(ServiceNetworkSharingConfigPtrOutput) } +// Specify if the service network should be enabled for sharing. func (o ServiceNetworkSharingConfigOutput) Enabled() pulumi.BoolOutput { return o.ApplyT(func(v ServiceNetworkSharingConfig) bool { return v.Enabled }).(pulumi.BoolOutput) } @@ -2737,6 +2791,7 @@ func (o ServiceNetworkSharingConfigPtrOutput) Elem() ServiceNetworkSharingConfig }).(ServiceNetworkSharingConfigOutput) } +// Specify if the service network should be enabled for sharing. func (o ServiceNetworkSharingConfigPtrOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *ServiceNetworkSharingConfig) *bool { if v == nil { diff --git a/sdk/go/aws/vpclattice/resourceConfiguration.go b/sdk/go/aws/vpclattice/resourceConfiguration.go index 0438a6add0..314bdf4c72 100644 --- a/sdk/go/aws/vpclattice/resourceConfiguration.go +++ b/sdk/go/aws/vpclattice/resourceConfiguration.go @@ -16,18 +16,39 @@ import ( type ResourceConfiguration struct { pulumi.CustomResourceState - AllowAssociationToSharableServiceNetwork pulumi.BoolPtrOutput `pulumi:"allowAssociationToSharableServiceNetwork"` - Arn pulumi.StringOutput `pulumi:"arn"` - AwsId pulumi.StringOutput `pulumi:"awsId"` - Name pulumi.StringPtrOutput `pulumi:"name"` - PortRanges pulumi.StringArrayOutput `pulumi:"portRanges"` - ProtocolType ResourceConfigurationProtocolTypePtrOutput `pulumi:"protocolType"` - ResourceConfigurationAuthType ResourceConfigurationAuthTypePtrOutput `pulumi:"resourceConfigurationAuthType"` - ResourceConfigurationDefinition pulumi.AnyOutput `pulumi:"resourceConfigurationDefinition"` - ResourceConfigurationGroupId pulumi.StringPtrOutput `pulumi:"resourceConfigurationGroupId"` - ResourceConfigurationType ResourceConfigurationTypePtrOutput `pulumi:"resourceConfigurationType"` - ResourceGatewayId pulumi.StringPtrOutput `pulumi:"resourceGatewayId"` - Tags aws.TagArrayOutput `pulumi:"tags"` + // Specifies whether the resource configuration can be associated with a sharable service network. + AllowAssociationToSharableServiceNetwork pulumi.BoolPtrOutput `pulumi:"allowAssociationToSharableServiceNetwork"` + // The Amazon Resource Name (ARN) of the resource configuration. + Arn pulumi.StringOutput `pulumi:"arn"` + // The ID of the resource configuration. + AwsId pulumi.StringOutput `pulumi:"awsId"` + // The name of the resource configuration. + Name pulumi.StringPtrOutput `pulumi:"name"` + // (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + PortRanges pulumi.StringArrayOutput `pulumi:"portRanges"` + // (SINGLE, GROUP) The protocol accepted by the resource configuration. + ProtocolType ResourceConfigurationProtocolTypePtrOutput `pulumi:"protocolType"` + // The auth type for the resource configuration. + ResourceConfigurationAuthType ResourceConfigurationAuthTypePtrOutput `pulumi:"resourceConfigurationAuthType"` + // Identifies the resource configuration in one of the following ways: + // + // - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + // - *Domain name* - Any domain name that is publicly resolvable. + // - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + ResourceConfigurationDefinition pulumi.AnyOutput `pulumi:"resourceConfigurationDefinition"` + // The ID of the group resource configuration. + ResourceConfigurationGroupId pulumi.StringPtrOutput `pulumi:"resourceConfigurationGroupId"` + // The type of resource configuration. A resource configuration can be one of the following types: + // + // - *SINGLE* - A single resource. + // - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + // - *CHILD* - A single resource that is part of a group resource configuration. + // - *ARN* - An AWS resource. + ResourceConfigurationType ResourceConfigurationTypePtrOutput `pulumi:"resourceConfigurationType"` + // The ID of the resource gateway. + ResourceGatewayId pulumi.StringPtrOutput `pulumi:"resourceGatewayId"` + // The tags for the resource configuration. + Tags aws.TagArrayOutput `pulumi:"tags"` } // NewResourceConfiguration registers a new resource with the given unique name, arguments, and options. @@ -77,30 +98,68 @@ func (ResourceConfigurationState) ElementType() reflect.Type { } type resourceConfigurationArgs struct { - AllowAssociationToSharableServiceNetwork *bool `pulumi:"allowAssociationToSharableServiceNetwork"` - Name *string `pulumi:"name"` - PortRanges []string `pulumi:"portRanges"` - ProtocolType *ResourceConfigurationProtocolType `pulumi:"protocolType"` - ResourceConfigurationAuthType *ResourceConfigurationAuthType `pulumi:"resourceConfigurationAuthType"` - ResourceConfigurationDefinition interface{} `pulumi:"resourceConfigurationDefinition"` - ResourceConfigurationGroupId *string `pulumi:"resourceConfigurationGroupId"` - ResourceConfigurationType *ResourceConfigurationType `pulumi:"resourceConfigurationType"` - ResourceGatewayId *string `pulumi:"resourceGatewayId"` - Tags []aws.Tag `pulumi:"tags"` + // Specifies whether the resource configuration can be associated with a sharable service network. + AllowAssociationToSharableServiceNetwork *bool `pulumi:"allowAssociationToSharableServiceNetwork"` + // The name of the resource configuration. + Name *string `pulumi:"name"` + // (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + PortRanges []string `pulumi:"portRanges"` + // (SINGLE, GROUP) The protocol accepted by the resource configuration. + ProtocolType *ResourceConfigurationProtocolType `pulumi:"protocolType"` + // The auth type for the resource configuration. + ResourceConfigurationAuthType *ResourceConfigurationAuthType `pulumi:"resourceConfigurationAuthType"` + // Identifies the resource configuration in one of the following ways: + // + // - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + // - *Domain name* - Any domain name that is publicly resolvable. + // - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + ResourceConfigurationDefinition interface{} `pulumi:"resourceConfigurationDefinition"` + // The ID of the group resource configuration. + ResourceConfigurationGroupId *string `pulumi:"resourceConfigurationGroupId"` + // The type of resource configuration. A resource configuration can be one of the following types: + // + // - *SINGLE* - A single resource. + // - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + // - *CHILD* - A single resource that is part of a group resource configuration. + // - *ARN* - An AWS resource. + ResourceConfigurationType *ResourceConfigurationType `pulumi:"resourceConfigurationType"` + // The ID of the resource gateway. + ResourceGatewayId *string `pulumi:"resourceGatewayId"` + // The tags for the resource configuration. + Tags []aws.Tag `pulumi:"tags"` } // The set of arguments for constructing a ResourceConfiguration resource. type ResourceConfigurationArgs struct { + // Specifies whether the resource configuration can be associated with a sharable service network. AllowAssociationToSharableServiceNetwork pulumi.BoolPtrInput - Name pulumi.StringPtrInput - PortRanges pulumi.StringArrayInput - ProtocolType ResourceConfigurationProtocolTypePtrInput - ResourceConfigurationAuthType ResourceConfigurationAuthTypePtrInput - ResourceConfigurationDefinition pulumi.Input - ResourceConfigurationGroupId pulumi.StringPtrInput - ResourceConfigurationType ResourceConfigurationTypePtrInput - ResourceGatewayId pulumi.StringPtrInput - Tags aws.TagArrayInput + // The name of the resource configuration. + Name pulumi.StringPtrInput + // (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + PortRanges pulumi.StringArrayInput + // (SINGLE, GROUP) The protocol accepted by the resource configuration. + ProtocolType ResourceConfigurationProtocolTypePtrInput + // The auth type for the resource configuration. + ResourceConfigurationAuthType ResourceConfigurationAuthTypePtrInput + // Identifies the resource configuration in one of the following ways: + // + // - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + // - *Domain name* - Any domain name that is publicly resolvable. + // - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + ResourceConfigurationDefinition pulumi.Input + // The ID of the group resource configuration. + ResourceConfigurationGroupId pulumi.StringPtrInput + // The type of resource configuration. A resource configuration can be one of the following types: + // + // - *SINGLE* - A single resource. + // - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + // - *CHILD* - A single resource that is part of a group resource configuration. + // - *ARN* - An AWS resource. + ResourceConfigurationType ResourceConfigurationTypePtrInput + // The ID of the resource gateway. + ResourceGatewayId pulumi.StringPtrInput + // The tags for the resource configuration. + Tags aws.TagArrayInput } func (ResourceConfigurationArgs) ElementType() reflect.Type { @@ -140,52 +199,73 @@ func (o ResourceConfigurationOutput) ToResourceConfigurationOutputWithContext(ct return o } +// Specifies whether the resource configuration can be associated with a sharable service network. func (o ResourceConfigurationOutput) AllowAssociationToSharableServiceNetwork() pulumi.BoolPtrOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.BoolPtrOutput { return v.AllowAssociationToSharableServiceNetwork }).(pulumi.BoolPtrOutput) } +// The Amazon Resource Name (ARN) of the resource configuration. func (o ResourceConfigurationOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } +// The ID of the resource configuration. func (o ResourceConfigurationOutput) AwsId() pulumi.StringOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.StringOutput { return v.AwsId }).(pulumi.StringOutput) } +// The name of the resource configuration. func (o ResourceConfigurationOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } +// (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). func (o ResourceConfigurationOutput) PortRanges() pulumi.StringArrayOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.StringArrayOutput { return v.PortRanges }).(pulumi.StringArrayOutput) } +// (SINGLE, GROUP) The protocol accepted by the resource configuration. func (o ResourceConfigurationOutput) ProtocolType() ResourceConfigurationProtocolTypePtrOutput { return o.ApplyT(func(v *ResourceConfiguration) ResourceConfigurationProtocolTypePtrOutput { return v.ProtocolType }).(ResourceConfigurationProtocolTypePtrOutput) } +// The auth type for the resource configuration. func (o ResourceConfigurationOutput) ResourceConfigurationAuthType() ResourceConfigurationAuthTypePtrOutput { return o.ApplyT(func(v *ResourceConfiguration) ResourceConfigurationAuthTypePtrOutput { return v.ResourceConfigurationAuthType }).(ResourceConfigurationAuthTypePtrOutput) } +// Identifies the resource configuration in one of the following ways: +// +// - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. +// - *Domain name* - Any domain name that is publicly resolvable. +// - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. func (o ResourceConfigurationOutput) ResourceConfigurationDefinition() pulumi.AnyOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.AnyOutput { return v.ResourceConfigurationDefinition }).(pulumi.AnyOutput) } +// The ID of the group resource configuration. func (o ResourceConfigurationOutput) ResourceConfigurationGroupId() pulumi.StringPtrOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.StringPtrOutput { return v.ResourceConfigurationGroupId }).(pulumi.StringPtrOutput) } +// The type of resource configuration. A resource configuration can be one of the following types: +// +// - *SINGLE* - A single resource. +// - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. +// - *CHILD* - A single resource that is part of a group resource configuration. +// - *ARN* - An AWS resource. func (o ResourceConfigurationOutput) ResourceConfigurationType() ResourceConfigurationTypePtrOutput { return o.ApplyT(func(v *ResourceConfiguration) ResourceConfigurationTypePtrOutput { return v.ResourceConfigurationType }).(ResourceConfigurationTypePtrOutput) } +// The ID of the resource gateway. func (o ResourceConfigurationOutput) ResourceGatewayId() pulumi.StringPtrOutput { return o.ApplyT(func(v *ResourceConfiguration) pulumi.StringPtrOutput { return v.ResourceGatewayId }).(pulumi.StringPtrOutput) } +// The tags for the resource configuration. func (o ResourceConfigurationOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *ResourceConfiguration) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/vpclattice/resourceGateway.go b/sdk/go/aws/vpclattice/resourceGateway.go index 44b2d8ba25..74931c80ac 100644 --- a/sdk/go/aws/vpclattice/resourceGateway.go +++ b/sdk/go/aws/vpclattice/resourceGateway.go @@ -16,16 +16,22 @@ import ( type ResourceGateway struct { pulumi.CustomResourceState - Arn pulumi.StringOutput `pulumi:"arn"` - AwsId pulumi.StringOutput `pulumi:"awsId"` + // The Amazon Resource Name (ARN) of the resource gateway. + Arn pulumi.StringOutput `pulumi:"arn"` + // The ID of the resource gateway. + AwsId pulumi.StringOutput `pulumi:"awsId"` + // The type of IP address used by the resource gateway. IpAddressType ResourceGatewayIpAddressTypePtrOutput `pulumi:"ipAddressType"` - Name pulumi.StringPtrOutput `pulumi:"name"` + // The name of the resource gateway. + Name pulumi.StringPtrOutput `pulumi:"name"` // The ID of one or more security groups to associate with the endpoint network interface. SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` // The ID of one or more subnets in which to create an endpoint network interface. - SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"` - Tags aws.TagArrayOutput `pulumi:"tags"` - VpcIdentifier pulumi.StringPtrOutput `pulumi:"vpcIdentifier"` + SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"` + // The tags for the resource gateway. + Tags aws.TagArrayOutput `pulumi:"tags"` + // The ID of the VPC for the resource gateway. + VpcIdentifier pulumi.StringPtrOutput `pulumi:"vpcIdentifier"` } // NewResourceGateway registers a new resource with the given unique name, arguments, and options. @@ -75,25 +81,33 @@ func (ResourceGatewayState) ElementType() reflect.Type { } type resourceGatewayArgs struct { + // The type of IP address used by the resource gateway. IpAddressType *ResourceGatewayIpAddressType `pulumi:"ipAddressType"` - Name *string `pulumi:"name"` + // The name of the resource gateway. + Name *string `pulumi:"name"` // The ID of one or more security groups to associate with the endpoint network interface. SecurityGroupIds []string `pulumi:"securityGroupIds"` // The ID of one or more subnets in which to create an endpoint network interface. - SubnetIds []string `pulumi:"subnetIds"` - Tags []aws.Tag `pulumi:"tags"` - VpcIdentifier *string `pulumi:"vpcIdentifier"` + SubnetIds []string `pulumi:"subnetIds"` + // The tags for the resource gateway. + Tags []aws.Tag `pulumi:"tags"` + // The ID of the VPC for the resource gateway. + VpcIdentifier *string `pulumi:"vpcIdentifier"` } // The set of arguments for constructing a ResourceGateway resource. type ResourceGatewayArgs struct { + // The type of IP address used by the resource gateway. IpAddressType ResourceGatewayIpAddressTypePtrInput - Name pulumi.StringPtrInput + // The name of the resource gateway. + Name pulumi.StringPtrInput // The ID of one or more security groups to associate with the endpoint network interface. SecurityGroupIds pulumi.StringArrayInput // The ID of one or more subnets in which to create an endpoint network interface. - SubnetIds pulumi.StringArrayInput - Tags aws.TagArrayInput + SubnetIds pulumi.StringArrayInput + // The tags for the resource gateway. + Tags aws.TagArrayInput + // The ID of the VPC for the resource gateway. VpcIdentifier pulumi.StringPtrInput } @@ -134,18 +148,22 @@ func (o ResourceGatewayOutput) ToResourceGatewayOutputWithContext(ctx context.Co return o } +// The Amazon Resource Name (ARN) of the resource gateway. func (o ResourceGatewayOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *ResourceGateway) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } +// The ID of the resource gateway. func (o ResourceGatewayOutput) AwsId() pulumi.StringOutput { return o.ApplyT(func(v *ResourceGateway) pulumi.StringOutput { return v.AwsId }).(pulumi.StringOutput) } +// The type of IP address used by the resource gateway. func (o ResourceGatewayOutput) IpAddressType() ResourceGatewayIpAddressTypePtrOutput { return o.ApplyT(func(v *ResourceGateway) ResourceGatewayIpAddressTypePtrOutput { return v.IpAddressType }).(ResourceGatewayIpAddressTypePtrOutput) } +// The name of the resource gateway. func (o ResourceGatewayOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *ResourceGateway) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } @@ -160,10 +178,12 @@ func (o ResourceGatewayOutput) SubnetIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *ResourceGateway) pulumi.StringArrayOutput { return v.SubnetIds }).(pulumi.StringArrayOutput) } +// The tags for the resource gateway. func (o ResourceGatewayOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *ResourceGateway) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } +// The ID of the VPC for the resource gateway. func (o ResourceGatewayOutput) VpcIdentifier() pulumi.StringPtrOutput { return o.ApplyT(func(v *ResourceGateway) pulumi.StringPtrOutput { return v.VpcIdentifier }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/vpclattice/serviceNetwork.go b/sdk/go/aws/vpclattice/serviceNetwork.go index 9cd7612d59..5553d447f1 100644 --- a/sdk/go/aws/vpclattice/serviceNetwork.go +++ b/sdk/go/aws/vpclattice/serviceNetwork.go @@ -32,7 +32,8 @@ type ServiceNetwork struct { // The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen. // // If you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name. - Name pulumi.StringPtrOutput `pulumi:"name"` + Name pulumi.StringPtrOutput `pulumi:"name"` + // Specify if the service network should be enabled for sharing. SharingConfig ServiceNetworkSharingConfigPtrOutput `pulumi:"sharingConfig"` // The tags for the service network. Tags aws.TagArrayOutput `pulumi:"tags"` @@ -90,7 +91,8 @@ type serviceNetworkArgs struct { // The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen. // // If you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name. - Name *string `pulumi:"name"` + Name *string `pulumi:"name"` + // Specify if the service network should be enabled for sharing. SharingConfig *ServiceNetworkSharingConfig `pulumi:"sharingConfig"` // The tags for the service network. Tags []aws.Tag `pulumi:"tags"` @@ -106,7 +108,8 @@ type ServiceNetworkArgs struct { // The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen. // // If you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name. - Name pulumi.StringPtrInput + Name pulumi.StringPtrInput + // Specify if the service network should be enabled for sharing. SharingConfig ServiceNetworkSharingConfigPtrInput // The tags for the service network. Tags aws.TagArrayInput @@ -184,6 +187,7 @@ func (o ServiceNetworkOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *ServiceNetwork) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } +// Specify if the service network should be enabled for sharing. func (o ServiceNetworkOutput) SharingConfig() ServiceNetworkSharingConfigPtrOutput { return o.ApplyT(func(v *ServiceNetwork) ServiceNetworkSharingConfigPtrOutput { return v.SharingConfig }).(ServiceNetworkSharingConfigPtrOutput) } diff --git a/sdk/go/aws/vpclattice/serviceNetworkResourceAssociation.go b/sdk/go/aws/vpclattice/serviceNetworkResourceAssociation.go index 86de31ff1b..5e74b9d282 100644 --- a/sdk/go/aws/vpclattice/serviceNetworkResourceAssociation.go +++ b/sdk/go/aws/vpclattice/serviceNetworkResourceAssociation.go @@ -16,11 +16,16 @@ import ( type ServiceNetworkResourceAssociation struct { pulumi.CustomResourceState - Arn pulumi.StringOutput `pulumi:"arn"` - AwsId pulumi.StringOutput `pulumi:"awsId"` + // The Amazon Resource Name (ARN) of the association. + Arn pulumi.StringOutput `pulumi:"arn"` + // The ID of the association between the service network and resource configuration. + AwsId pulumi.StringOutput `pulumi:"awsId"` + // The ID of the resource configuration associated with the service network. ResourceConfigurationId pulumi.StringPtrOutput `pulumi:"resourceConfigurationId"` - ServiceNetworkId pulumi.StringPtrOutput `pulumi:"serviceNetworkId"` - Tags aws.TagArrayOutput `pulumi:"tags"` + // The ID of the service network associated with the resource configuration. + ServiceNetworkId pulumi.StringPtrOutput `pulumi:"serviceNetworkId"` + // A key-value pair to associate with a resource. + Tags aws.TagArrayOutput `pulumi:"tags"` } // NewServiceNetworkResourceAssociation registers a new resource with the given unique name, arguments, and options. @@ -68,16 +73,22 @@ func (ServiceNetworkResourceAssociationState) ElementType() reflect.Type { } type serviceNetworkResourceAssociationArgs struct { - ResourceConfigurationId *string `pulumi:"resourceConfigurationId"` - ServiceNetworkId *string `pulumi:"serviceNetworkId"` - Tags []aws.Tag `pulumi:"tags"` + // The ID of the resource configuration associated with the service network. + ResourceConfigurationId *string `pulumi:"resourceConfigurationId"` + // The ID of the service network associated with the resource configuration. + ServiceNetworkId *string `pulumi:"serviceNetworkId"` + // A key-value pair to associate with a resource. + Tags []aws.Tag `pulumi:"tags"` } // The set of arguments for constructing a ServiceNetworkResourceAssociation resource. type ServiceNetworkResourceAssociationArgs struct { + // The ID of the resource configuration associated with the service network. ResourceConfigurationId pulumi.StringPtrInput - ServiceNetworkId pulumi.StringPtrInput - Tags aws.TagArrayInput + // The ID of the service network associated with the resource configuration. + ServiceNetworkId pulumi.StringPtrInput + // A key-value pair to associate with a resource. + Tags aws.TagArrayInput } func (ServiceNetworkResourceAssociationArgs) ElementType() reflect.Type { @@ -117,22 +128,27 @@ func (o ServiceNetworkResourceAssociationOutput) ToServiceNetworkResourceAssocia return o } +// The Amazon Resource Name (ARN) of the association. func (o ServiceNetworkResourceAssociationOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *ServiceNetworkResourceAssociation) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } +// The ID of the association between the service network and resource configuration. func (o ServiceNetworkResourceAssociationOutput) AwsId() pulumi.StringOutput { return o.ApplyT(func(v *ServiceNetworkResourceAssociation) pulumi.StringOutput { return v.AwsId }).(pulumi.StringOutput) } +// The ID of the resource configuration associated with the service network. func (o ServiceNetworkResourceAssociationOutput) ResourceConfigurationId() pulumi.StringPtrOutput { return o.ApplyT(func(v *ServiceNetworkResourceAssociation) pulumi.StringPtrOutput { return v.ResourceConfigurationId }).(pulumi.StringPtrOutput) } +// The ID of the service network associated with the resource configuration. func (o ServiceNetworkResourceAssociationOutput) ServiceNetworkId() pulumi.StringPtrOutput { return o.ApplyT(func(v *ServiceNetworkResourceAssociation) pulumi.StringPtrOutput { return v.ServiceNetworkId }).(pulumi.StringPtrOutput) } +// A key-value pair to associate with a resource. func (o ServiceNetworkResourceAssociationOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *ServiceNetworkResourceAssociation) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/wisdom/aiGuardrailVersion.go b/sdk/go/aws/wisdom/aiGuardrailVersion.go index 3cd5a537f6..7d7456f9bf 100644 --- a/sdk/go/aws/wisdom/aiGuardrailVersion.go +++ b/sdk/go/aws/wisdom/aiGuardrailVersion.go @@ -16,12 +16,18 @@ import ( type AiGuardrailVersion struct { pulumi.CustomResourceState - AiGuardrailArn pulumi.StringOutput `pulumi:"aiGuardrailArn"` - AiGuardrailId pulumi.StringOutput `pulumi:"aiGuardrailId"` - AiGuardrailVersionId pulumi.StringOutput `pulumi:"aiGuardrailVersionId"` - AssistantArn pulumi.StringOutput `pulumi:"assistantArn"` - AssistantId pulumi.StringOutput `pulumi:"assistantId"` - ModifiedTimeSeconds pulumi.Float64PtrOutput `pulumi:"modifiedTimeSeconds"` + // The ARN of the AI guardrail version. + AiGuardrailArn pulumi.StringOutput `pulumi:"aiGuardrailArn"` + // The ID of the AI guardrail version. + AiGuardrailId pulumi.StringOutput `pulumi:"aiGuardrailId"` + // The ID of the AI guardrail version. + AiGuardrailVersionId pulumi.StringOutput `pulumi:"aiGuardrailVersionId"` + // The ARN of the AI guardrail version assistant. + AssistantArn pulumi.StringOutput `pulumi:"assistantArn"` + // The ID of the AI guardrail version assistant. + AssistantId pulumi.StringOutput `pulumi:"assistantId"` + // The modified time of the AI guardrail version in seconds. + ModifiedTimeSeconds pulumi.Float64PtrOutput `pulumi:"modifiedTimeSeconds"` // The version number for this AI Guardrail version. VersionNumber pulumi.Float64Output `pulumi:"versionNumber"` } @@ -78,15 +84,21 @@ func (AiGuardrailVersionState) ElementType() reflect.Type { } type aiGuardrailVersionArgs struct { - AiGuardrailId string `pulumi:"aiGuardrailId"` - AssistantId string `pulumi:"assistantId"` + // The ID of the AI guardrail version. + AiGuardrailId string `pulumi:"aiGuardrailId"` + // The ID of the AI guardrail version assistant. + AssistantId string `pulumi:"assistantId"` + // The modified time of the AI guardrail version in seconds. ModifiedTimeSeconds *float64 `pulumi:"modifiedTimeSeconds"` } // The set of arguments for constructing a AiGuardrailVersion resource. type AiGuardrailVersionArgs struct { - AiGuardrailId pulumi.StringInput - AssistantId pulumi.StringInput + // The ID of the AI guardrail version. + AiGuardrailId pulumi.StringInput + // The ID of the AI guardrail version assistant. + AssistantId pulumi.StringInput + // The modified time of the AI guardrail version in seconds. ModifiedTimeSeconds pulumi.Float64PtrInput } @@ -127,26 +139,32 @@ func (o AiGuardrailVersionOutput) ToAiGuardrailVersionOutputWithContext(ctx cont return o } +// The ARN of the AI guardrail version. func (o AiGuardrailVersionOutput) AiGuardrailArn() pulumi.StringOutput { return o.ApplyT(func(v *AiGuardrailVersion) pulumi.StringOutput { return v.AiGuardrailArn }).(pulumi.StringOutput) } +// The ID of the AI guardrail version. func (o AiGuardrailVersionOutput) AiGuardrailId() pulumi.StringOutput { return o.ApplyT(func(v *AiGuardrailVersion) pulumi.StringOutput { return v.AiGuardrailId }).(pulumi.StringOutput) } +// The ID of the AI guardrail version. func (o AiGuardrailVersionOutput) AiGuardrailVersionId() pulumi.StringOutput { return o.ApplyT(func(v *AiGuardrailVersion) pulumi.StringOutput { return v.AiGuardrailVersionId }).(pulumi.StringOutput) } +// The ARN of the AI guardrail version assistant. func (o AiGuardrailVersionOutput) AssistantArn() pulumi.StringOutput { return o.ApplyT(func(v *AiGuardrailVersion) pulumi.StringOutput { return v.AssistantArn }).(pulumi.StringOutput) } +// The ID of the AI guardrail version assistant. func (o AiGuardrailVersionOutput) AssistantId() pulumi.StringOutput { return o.ApplyT(func(v *AiGuardrailVersion) pulumi.StringOutput { return v.AssistantId }).(pulumi.StringOutput) } +// The modified time of the AI guardrail version in seconds. func (o AiGuardrailVersionOutput) ModifiedTimeSeconds() pulumi.Float64PtrOutput { return o.ApplyT(func(v *AiGuardrailVersion) pulumi.Float64PtrOutput { return v.ModifiedTimeSeconds }).(pulumi.Float64PtrOutput) } diff --git a/sdk/go/aws/wisdom/aiPromptVersion.go b/sdk/go/aws/wisdom/aiPromptVersion.go index 785145f6ff..6c6550aee9 100644 --- a/sdk/go/aws/wisdom/aiPromptVersion.go +++ b/sdk/go/aws/wisdom/aiPromptVersion.go @@ -16,6 +16,7 @@ import ( type AiPromptVersion struct { pulumi.CustomResourceState + // The ARN of the AI prompt. AiPromptArn pulumi.StringOutput `pulumi:"aiPromptArn"` // The identifier of the Amazon Q in Connect AI prompt. AiPromptId pulumi.StringOutput `pulumi:"aiPromptId"` @@ -136,6 +137,7 @@ func (o AiPromptVersionOutput) ToAiPromptVersionOutputWithContext(ctx context.Co return o } +// The ARN of the AI prompt. func (o AiPromptVersionOutput) AiPromptArn() pulumi.StringOutput { return o.ApplyT(func(v *AiPromptVersion) pulumi.StringOutput { return v.AiPromptArn }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/wisdom/getAiGuardrailVersion.go b/sdk/go/aws/wisdom/getAiGuardrailVersion.go index 9ccd264e51..b7683a316b 100644 --- a/sdk/go/aws/wisdom/getAiGuardrailVersion.go +++ b/sdk/go/aws/wisdom/getAiGuardrailVersion.go @@ -23,16 +23,21 @@ func LookupAiGuardrailVersion(ctx *pulumi.Context, args *LookupAiGuardrailVersio } type LookupAiGuardrailVersionArgs struct { + // The ID of the AI guardrail version. AiGuardrailId string `pulumi:"aiGuardrailId"` - AssistantId string `pulumi:"assistantId"` + // The ID of the AI guardrail version assistant. + AssistantId string `pulumi:"assistantId"` // The version number for this AI Guardrail version. VersionNumber float64 `pulumi:"versionNumber"` } type LookupAiGuardrailVersionResult struct { - AiGuardrailArn *string `pulumi:"aiGuardrailArn"` + // The ARN of the AI guardrail version. + AiGuardrailArn *string `pulumi:"aiGuardrailArn"` + // The ID of the AI guardrail version. AiGuardrailVersionId *string `pulumi:"aiGuardrailVersionId"` - AssistantArn *string `pulumi:"assistantArn"` + // The ARN of the AI guardrail version assistant. + AssistantArn *string `pulumi:"assistantArn"` // The version number for this AI Guardrail version. VersionNumber *float64 `pulumi:"versionNumber"` } @@ -47,8 +52,10 @@ func LookupAiGuardrailVersionOutput(ctx *pulumi.Context, args LookupAiGuardrailV } type LookupAiGuardrailVersionOutputArgs struct { + // The ID of the AI guardrail version. AiGuardrailId pulumi.StringInput `pulumi:"aiGuardrailId"` - AssistantId pulumi.StringInput `pulumi:"assistantId"` + // The ID of the AI guardrail version assistant. + AssistantId pulumi.StringInput `pulumi:"assistantId"` // The version number for this AI Guardrail version. VersionNumber pulumi.Float64Input `pulumi:"versionNumber"` } @@ -71,14 +78,17 @@ func (o LookupAiGuardrailVersionResultOutput) ToLookupAiGuardrailVersionResultOu return o } +// The ARN of the AI guardrail version. func (o LookupAiGuardrailVersionResultOutput) AiGuardrailArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAiGuardrailVersionResult) *string { return v.AiGuardrailArn }).(pulumi.StringPtrOutput) } +// The ID of the AI guardrail version. func (o LookupAiGuardrailVersionResultOutput) AiGuardrailVersionId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAiGuardrailVersionResult) *string { return v.AiGuardrailVersionId }).(pulumi.StringPtrOutput) } +// The ARN of the AI guardrail version assistant. func (o LookupAiGuardrailVersionResultOutput) AssistantArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAiGuardrailVersionResult) *string { return v.AssistantArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/wisdom/getAiPromptVersion.go b/sdk/go/aws/wisdom/getAiPromptVersion.go index 41986d9563..e9a7843cf1 100644 --- a/sdk/go/aws/wisdom/getAiPromptVersion.go +++ b/sdk/go/aws/wisdom/getAiPromptVersion.go @@ -32,6 +32,7 @@ type LookupAiPromptVersionArgs struct { } type LookupAiPromptVersionResult struct { + // The ARN of the AI prompt. AiPromptArn *string `pulumi:"aiPromptArn"` AiPromptVersionId *string `pulumi:"aiPromptVersionId"` AssistantArn *string `pulumi:"assistantArn"` @@ -75,6 +76,7 @@ func (o LookupAiPromptVersionResultOutput) ToLookupAiPromptVersionResultOutputWi return o } +// The ARN of the AI prompt. func (o LookupAiPromptVersionResultOutput) AiPromptArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAiPromptVersionResult) *string { return v.AiPromptArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/wisdom/pulumiTypes.go b/sdk/go/aws/wisdom/pulumiTypes.go index d6af63da98..0aff4b7599 100644 --- a/sdk/go/aws/wisdom/pulumiTypes.go +++ b/sdk/go/aws/wisdom/pulumiTypes.go @@ -2512,9 +2512,12 @@ func (o AiGuardrailAiGuardrailWordPolicyConfigPtrOutput) WordsConfig() AiGuardra // Content filter config in content policy. type AiGuardrailGuardrailContentFilterConfig struct { - InputStrength AiGuardrailGuardrailFilterStrength `pulumi:"inputStrength"` - OutputStrength AiGuardrailGuardrailFilterStrength `pulumi:"outputStrength"` - Type AiGuardrailGuardrailContentFilterType `pulumi:"type"` + // The strength of the input for the guardrail content filter. + InputStrength AiGuardrailGuardrailFilterStrength `pulumi:"inputStrength"` + // The output strength of the guardrail content filter. + OutputStrength AiGuardrailGuardrailFilterStrength `pulumi:"outputStrength"` + // The type of the guardrail content filter. + Type AiGuardrailGuardrailContentFilterType `pulumi:"type"` } // AiGuardrailGuardrailContentFilterConfigInput is an input type that accepts AiGuardrailGuardrailContentFilterConfigArgs and AiGuardrailGuardrailContentFilterConfigOutput values. @@ -2530,9 +2533,12 @@ type AiGuardrailGuardrailContentFilterConfigInput interface { // Content filter config in content policy. type AiGuardrailGuardrailContentFilterConfigArgs struct { - InputStrength AiGuardrailGuardrailFilterStrengthInput `pulumi:"inputStrength"` - OutputStrength AiGuardrailGuardrailFilterStrengthInput `pulumi:"outputStrength"` - Type AiGuardrailGuardrailContentFilterTypeInput `pulumi:"type"` + // The strength of the input for the guardrail content filter. + InputStrength AiGuardrailGuardrailFilterStrengthInput `pulumi:"inputStrength"` + // The output strength of the guardrail content filter. + OutputStrength AiGuardrailGuardrailFilterStrengthInput `pulumi:"outputStrength"` + // The type of the guardrail content filter. + Type AiGuardrailGuardrailContentFilterTypeInput `pulumi:"type"` } func (AiGuardrailGuardrailContentFilterConfigArgs) ElementType() reflect.Type { @@ -2587,18 +2593,21 @@ func (o AiGuardrailGuardrailContentFilterConfigOutput) ToAiGuardrailGuardrailCon return o } +// The strength of the input for the guardrail content filter. func (o AiGuardrailGuardrailContentFilterConfigOutput) InputStrength() AiGuardrailGuardrailFilterStrengthOutput { return o.ApplyT(func(v AiGuardrailGuardrailContentFilterConfig) AiGuardrailGuardrailFilterStrength { return v.InputStrength }).(AiGuardrailGuardrailFilterStrengthOutput) } +// The output strength of the guardrail content filter. func (o AiGuardrailGuardrailContentFilterConfigOutput) OutputStrength() AiGuardrailGuardrailFilterStrengthOutput { return o.ApplyT(func(v AiGuardrailGuardrailContentFilterConfig) AiGuardrailGuardrailFilterStrength { return v.OutputStrength }).(AiGuardrailGuardrailFilterStrengthOutput) } +// The type of the guardrail content filter. func (o AiGuardrailGuardrailContentFilterConfigOutput) Type() AiGuardrailGuardrailContentFilterTypeOutput { return o.ApplyT(func(v AiGuardrailGuardrailContentFilterConfig) AiGuardrailGuardrailContentFilterType { return v.Type }).(AiGuardrailGuardrailContentFilterTypeOutput) } @@ -2626,8 +2635,9 @@ func (o AiGuardrailGuardrailContentFilterConfigArrayOutput) Index(i pulumi.IntIn // A config for grounding filter. type AiGuardrailGuardrailContextualGroundingFilterConfig struct { // The threshold for this filter. - Threshold float64 `pulumi:"threshold"` - Type AiGuardrailGuardrailContextualGroundingFilterType `pulumi:"type"` + Threshold float64 `pulumi:"threshold"` + // The type of this filter. + Type AiGuardrailGuardrailContextualGroundingFilterType `pulumi:"type"` } // AiGuardrailGuardrailContextualGroundingFilterConfigInput is an input type that accepts AiGuardrailGuardrailContextualGroundingFilterConfigArgs and AiGuardrailGuardrailContextualGroundingFilterConfigOutput values. @@ -2644,8 +2654,9 @@ type AiGuardrailGuardrailContextualGroundingFilterConfigInput interface { // A config for grounding filter. type AiGuardrailGuardrailContextualGroundingFilterConfigArgs struct { // The threshold for this filter. - Threshold pulumi.Float64Input `pulumi:"threshold"` - Type AiGuardrailGuardrailContextualGroundingFilterTypeInput `pulumi:"type"` + Threshold pulumi.Float64Input `pulumi:"threshold"` + // The type of this filter. + Type AiGuardrailGuardrailContextualGroundingFilterTypeInput `pulumi:"type"` } func (AiGuardrailGuardrailContextualGroundingFilterConfigArgs) ElementType() reflect.Type { @@ -2705,6 +2716,7 @@ func (o AiGuardrailGuardrailContextualGroundingFilterConfigOutput) Threshold() p return o.ApplyT(func(v AiGuardrailGuardrailContextualGroundingFilterConfig) float64 { return v.Threshold }).(pulumi.Float64Output) } +// The type of this filter. func (o AiGuardrailGuardrailContextualGroundingFilterConfigOutput) Type() AiGuardrailGuardrailContextualGroundingFilterTypeOutput { return o.ApplyT(func(v AiGuardrailGuardrailContextualGroundingFilterConfig) AiGuardrailGuardrailContextualGroundingFilterType { return v.Type @@ -2733,6 +2745,7 @@ func (o AiGuardrailGuardrailContextualGroundingFilterConfigArrayOutput) Index(i // A managed words config. type AiGuardrailGuardrailManagedWordsConfig struct { + // The type of guardrail managed words. Type AiGuardrailGuardrailManagedWordsType `pulumi:"type"` } @@ -2749,6 +2762,7 @@ type AiGuardrailGuardrailManagedWordsConfigInput interface { // A managed words config. type AiGuardrailGuardrailManagedWordsConfigArgs struct { + // The type of guardrail managed words. Type AiGuardrailGuardrailManagedWordsTypeInput `pulumi:"type"` } @@ -2804,6 +2818,7 @@ func (o AiGuardrailGuardrailManagedWordsConfigOutput) ToAiGuardrailGuardrailMana return o } +// The type of guardrail managed words. func (o AiGuardrailGuardrailManagedWordsConfigOutput) Type() AiGuardrailGuardrailManagedWordsTypeOutput { return o.ApplyT(func(v AiGuardrailGuardrailManagedWordsConfig) AiGuardrailGuardrailManagedWordsType { return v.Type }).(AiGuardrailGuardrailManagedWordsTypeOutput) } @@ -2830,6 +2845,7 @@ func (o AiGuardrailGuardrailManagedWordsConfigArrayOutput) Index(i pulumi.IntInp // Pii entity configuration. type AiGuardrailGuardrailPiiEntityConfig struct { + // The action of guardrail PII entity configuration. Action AiGuardrailGuardrailSensitiveInformationAction `pulumi:"action"` Type AiGuardrailGuardrailPiiEntityType `pulumi:"type"` } @@ -2847,6 +2863,7 @@ type AiGuardrailGuardrailPiiEntityConfigInput interface { // Pii entity configuration. type AiGuardrailGuardrailPiiEntityConfigArgs struct { + // The action of guardrail PII entity configuration. Action AiGuardrailGuardrailSensitiveInformationActionInput `pulumi:"action"` Type AiGuardrailGuardrailPiiEntityTypeInput `pulumi:"type"` } @@ -2903,6 +2920,7 @@ func (o AiGuardrailGuardrailPiiEntityConfigOutput) ToAiGuardrailGuardrailPiiEnti return o } +// The action of guardrail PII entity configuration. func (o AiGuardrailGuardrailPiiEntityConfigOutput) Action() AiGuardrailGuardrailSensitiveInformationActionOutput { return o.ApplyT(func(v AiGuardrailGuardrailPiiEntityConfig) AiGuardrailGuardrailSensitiveInformationAction { return v.Action @@ -2935,6 +2953,7 @@ func (o AiGuardrailGuardrailPiiEntityConfigArrayOutput) Index(i pulumi.IntInput) // A regex configuration. type AiGuardrailGuardrailRegexConfig struct { + // The action of the guardrail regex configuration. Action AiGuardrailGuardrailSensitiveInformationAction `pulumi:"action"` // The regex description. Description *string `pulumi:"description"` @@ -2957,6 +2976,7 @@ type AiGuardrailGuardrailRegexConfigInput interface { // A regex configuration. type AiGuardrailGuardrailRegexConfigArgs struct { + // The action of the guardrail regex configuration. Action AiGuardrailGuardrailSensitiveInformationActionInput `pulumi:"action"` // The regex description. Description pulumi.StringPtrInput `pulumi:"description"` @@ -3018,6 +3038,7 @@ func (o AiGuardrailGuardrailRegexConfigOutput) ToAiGuardrailGuardrailRegexConfig return o } +// The action of the guardrail regex configuration. func (o AiGuardrailGuardrailRegexConfigOutput) Action() AiGuardrailGuardrailSensitiveInformationActionOutput { return o.ApplyT(func(v AiGuardrailGuardrailRegexConfig) AiGuardrailGuardrailSensitiveInformationAction { return v.Action @@ -3066,7 +3087,8 @@ type AiGuardrailGuardrailTopicConfig struct { // List of text examples Examples []string `pulumi:"examples"` // Name of topic in topic policy - Name string `pulumi:"name"` + Name string `pulumi:"name"` + // Type of topic in a policy. Type AiGuardrailGuardrailTopicType `pulumi:"type"` } @@ -3088,7 +3110,8 @@ type AiGuardrailGuardrailTopicConfigArgs struct { // List of text examples Examples pulumi.StringArrayInput `pulumi:"examples"` // Name of topic in topic policy - Name pulumi.StringInput `pulumi:"name"` + Name pulumi.StringInput `pulumi:"name"` + // Type of topic in a policy. Type AiGuardrailGuardrailTopicTypeInput `pulumi:"type"` } @@ -3159,6 +3182,7 @@ func (o AiGuardrailGuardrailTopicConfigOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v AiGuardrailGuardrailTopicConfig) string { return v.Name }).(pulumi.StringOutput) } +// Type of topic in a policy. func (o AiGuardrailGuardrailTopicConfigOutput) Type() AiGuardrailGuardrailTopicTypeOutput { return o.ApplyT(func(v AiGuardrailGuardrailTopicConfig) AiGuardrailGuardrailTopicType { return v.Type }).(AiGuardrailGuardrailTopicTypeOutput) } @@ -3702,7 +3726,9 @@ func (o KnowledgeBaseAppIntegrationsConfigurationPtrOutput) ObjectFields() pulum } type KnowledgeBaseBedrockFoundationModelConfiguration struct { - ModelArn string `pulumi:"modelArn"` + // The model ARN of the Bedrock foundation model. + ModelArn string `pulumi:"modelArn"` + // The parsing prompt of the Bedrock foundation model configuration. ParsingPrompt *KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties `pulumi:"parsingPrompt"` } @@ -3718,7 +3744,9 @@ type KnowledgeBaseBedrockFoundationModelConfigurationInput interface { } type KnowledgeBaseBedrockFoundationModelConfigurationArgs struct { - ModelArn pulumi.StringInput `pulumi:"modelArn"` + // The model ARN of the Bedrock foundation model. + ModelArn pulumi.StringInput `pulumi:"modelArn"` + // The parsing prompt of the Bedrock foundation model configuration. ParsingPrompt KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesPtrInput `pulumi:"parsingPrompt"` } @@ -3799,10 +3827,12 @@ func (o KnowledgeBaseBedrockFoundationModelConfigurationOutput) ToKnowledgeBaseB }).(KnowledgeBaseBedrockFoundationModelConfigurationPtrOutput) } +// The model ARN of the Bedrock foundation model. func (o KnowledgeBaseBedrockFoundationModelConfigurationOutput) ModelArn() pulumi.StringOutput { return o.ApplyT(func(v KnowledgeBaseBedrockFoundationModelConfiguration) string { return v.ModelArn }).(pulumi.StringOutput) } +// The parsing prompt of the Bedrock foundation model configuration. func (o KnowledgeBaseBedrockFoundationModelConfigurationOutput) ParsingPrompt() KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesPtrOutput { return o.ApplyT(func(v KnowledgeBaseBedrockFoundationModelConfiguration) *KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties { return v.ParsingPrompt @@ -3833,6 +3863,7 @@ func (o KnowledgeBaseBedrockFoundationModelConfigurationPtrOutput) Elem() Knowle }).(KnowledgeBaseBedrockFoundationModelConfigurationOutput) } +// The model ARN of the Bedrock foundation model. func (o KnowledgeBaseBedrockFoundationModelConfigurationPtrOutput) ModelArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *KnowledgeBaseBedrockFoundationModelConfiguration) *string { if v == nil { @@ -3842,6 +3873,7 @@ func (o KnowledgeBaseBedrockFoundationModelConfigurationPtrOutput) ModelArn() pu }).(pulumi.StringPtrOutput) } +// The parsing prompt of the Bedrock foundation model configuration. func (o KnowledgeBaseBedrockFoundationModelConfigurationPtrOutput) ParsingPrompt() KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesPtrOutput { return o.ApplyT(func(v *KnowledgeBaseBedrockFoundationModelConfiguration) *KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties { if v == nil { @@ -3851,6 +3883,7 @@ func (o KnowledgeBaseBedrockFoundationModelConfigurationPtrOutput) ParsingPrompt }).(KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesPtrOutput) } +// The parsing prompt of the Bedrock foundation model configuration. type KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties struct { ParsingPromptText string `pulumi:"parsingPromptText"` } @@ -3866,6 +3899,7 @@ type KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesInpu ToKnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesOutputWithContext(context.Context) KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesOutput } +// The parsing prompt of the Bedrock foundation model configuration. type KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs struct { ParsingPromptText pulumi.StringInput `pulumi:"parsingPromptText"` } @@ -3923,6 +3957,7 @@ func (i *knowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties return pulumi.ToOutputWithContext(ctx, i).(KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesPtrOutput) } +// The parsing prompt of the Bedrock foundation model configuration. type KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesOutput struct{ *pulumi.OutputState } func (KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesOutput) ElementType() reflect.Type { diff --git a/sdk/go/aws/workspaces/getWorkspacesPool.go b/sdk/go/aws/workspaces/getWorkspacesPool.go index e590e46013..821e99df65 100644 --- a/sdk/go/aws/workspaces/getWorkspacesPool.go +++ b/sdk/go/aws/workspaces/getWorkspacesPool.go @@ -7,6 +7,7 @@ import ( "context" "reflect" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws" "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -43,7 +44,8 @@ type LookupWorkspacesPoolResult struct { // The Amazon Resource Name (ARN) for the pool. PoolArn *string `pulumi:"poolArn"` // The identifier of the pool. - PoolId *string `pulumi:"poolId"` + PoolId *string `pulumi:"poolId"` + Tags []aws.Tag `pulumi:"tags"` // The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. TimeoutSettings *WorkspacesPoolTimeoutSettings `pulumi:"timeoutSettings"` } @@ -120,6 +122,10 @@ func (o LookupWorkspacesPoolResultOutput) PoolId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupWorkspacesPoolResult) *string { return v.PoolId }).(pulumi.StringPtrOutput) } +func (o LookupWorkspacesPoolResultOutput) Tags() aws.TagArrayOutput { + return o.ApplyT(func(v LookupWorkspacesPoolResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) +} + // The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. func (o LookupWorkspacesPoolResultOutput) TimeoutSettings() WorkspacesPoolTimeoutSettingsPtrOutput { return o.ApplyT(func(v LookupWorkspacesPoolResult) *WorkspacesPoolTimeoutSettings { return v.TimeoutSettings }).(WorkspacesPoolTimeoutSettingsPtrOutput) diff --git a/sdk/go/aws/workspaces/pulumiTypes.go b/sdk/go/aws/workspaces/pulumiTypes.go index 0e9321fbea..a4459a09e8 100644 --- a/sdk/go/aws/workspaces/pulumiTypes.go +++ b/sdk/go/aws/workspaces/pulumiTypes.go @@ -330,9 +330,7 @@ func (o WorkspacesPoolCapacityPtrOutput) DesiredUserSessions() pulumi.IntPtrOutp } type WorkspacesPoolTag struct { - // The key of the tag. - Key string `pulumi:"key"` - // The value of the tag. + Key string `pulumi:"key"` Value string `pulumi:"value"` } diff --git a/sdk/go/aws/workspaces/workspacesPool.go b/sdk/go/aws/workspaces/workspacesPool.go index 59797c62e4..24e63ce226 100644 --- a/sdk/go/aws/workspaces/workspacesPool.go +++ b/sdk/go/aws/workspaces/workspacesPool.go @@ -35,8 +35,7 @@ type WorkspacesPool struct { PoolId pulumi.StringOutput `pulumi:"poolId"` // The name of the pool. PoolName pulumi.StringOutput `pulumi:"poolName"` - // The tags for the pool. - Tags aws.TagArrayOutput `pulumi:"tags"` + Tags aws.TagArrayOutput `pulumi:"tags"` // The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. TimeoutSettings WorkspacesPoolTimeoutSettingsPtrOutput `pulumi:"timeoutSettings"` } @@ -105,9 +104,8 @@ type workspacesPoolArgs struct { // The identifier of the directory used by the pool. DirectoryId string `pulumi:"directoryId"` // The name of the pool. - PoolName *string `pulumi:"poolName"` - // The tags for the pool. - Tags []aws.Tag `pulumi:"tags"` + PoolName *string `pulumi:"poolName"` + Tags []aws.Tag `pulumi:"tags"` // The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. TimeoutSettings *WorkspacesPoolTimeoutSettings `pulumi:"timeoutSettings"` } @@ -126,8 +124,7 @@ type WorkspacesPoolArgs struct { DirectoryId pulumi.StringInput // The name of the pool. PoolName pulumi.StringPtrInput - // The tags for the pool. - Tags aws.TagArrayInput + Tags aws.TagArrayInput // The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. TimeoutSettings WorkspacesPoolTimeoutSettingsPtrInput } @@ -214,7 +211,6 @@ func (o WorkspacesPoolOutput) PoolName() pulumi.StringOutput { return o.ApplyT(func(v *WorkspacesPool) pulumi.StringOutput { return v.PoolName }).(pulumi.StringOutput) } -// The tags for the pool. func (o WorkspacesPoolOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *WorkspacesPool) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/nodejs/appconfig/configurationProfile.ts b/sdk/nodejs/appconfig/configurationProfile.ts index dff1d12a2b..387765d599 100644 --- a/sdk/nodejs/appconfig/configurationProfile.ts +++ b/sdk/nodejs/appconfig/configurationProfile.ts @@ -45,6 +45,10 @@ export class ConfigurationProfile extends pulumi.CustomResource { * The configuration profile ID */ public /*out*/ readonly configurationProfileId!: pulumi.Output; + /** + * On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + */ + public readonly deletionProtectionCheck!: pulumi.Output; /** * A description of the configuration profile. */ @@ -100,6 +104,7 @@ export class ConfigurationProfile extends pulumi.CustomResource { throw new Error("Missing required property 'locationUri'"); } resourceInputs["applicationId"] = args ? args.applicationId : undefined; + resourceInputs["deletionProtectionCheck"] = args ? args.deletionProtectionCheck : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["kmsKeyIdentifier"] = args ? args.kmsKeyIdentifier : undefined; resourceInputs["locationUri"] = args ? args.locationUri : undefined; @@ -113,6 +118,7 @@ export class ConfigurationProfile extends pulumi.CustomResource { } else { resourceInputs["applicationId"] = undefined /*out*/; resourceInputs["configurationProfileId"] = undefined /*out*/; + resourceInputs["deletionProtectionCheck"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; resourceInputs["kmsKeyArn"] = undefined /*out*/; resourceInputs["kmsKeyIdentifier"] = undefined /*out*/; @@ -138,6 +144,10 @@ export interface ConfigurationProfileArgs { * The application ID. */ applicationId: pulumi.Input; + /** + * On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + */ + deletionProtectionCheck?: pulumi.Input; /** * A description of the configuration profile. */ diff --git a/sdk/nodejs/appconfig/environment.ts b/sdk/nodejs/appconfig/environment.ts index 2b0fc0b707..a1336d4469 100644 --- a/sdk/nodejs/appconfig/environment.ts +++ b/sdk/nodejs/appconfig/environment.ts @@ -41,6 +41,10 @@ export class Environment extends pulumi.CustomResource { * The application ID. */ public readonly applicationId!: pulumi.Output; + /** + * On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + */ + public readonly deletionProtectionCheck!: pulumi.Output; /** * A description of the environment. */ @@ -77,6 +81,7 @@ export class Environment extends pulumi.CustomResource { throw new Error("Missing required property 'applicationId'"); } resourceInputs["applicationId"] = args ? args.applicationId : undefined; + resourceInputs["deletionProtectionCheck"] = args ? args.deletionProtectionCheck : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["monitors"] = args ? args.monitors : undefined; resourceInputs["name"] = args ? args.name : undefined; @@ -84,6 +89,7 @@ export class Environment extends pulumi.CustomResource { resourceInputs["environmentId"] = undefined /*out*/; } else { resourceInputs["applicationId"] = undefined /*out*/; + resourceInputs["deletionProtectionCheck"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; resourceInputs["environmentId"] = undefined /*out*/; resourceInputs["monitors"] = undefined /*out*/; @@ -105,6 +111,10 @@ export interface EnvironmentArgs { * The application ID. */ applicationId: pulumi.Input; + /** + * On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + */ + deletionProtectionCheck?: pulumi.Input; /** * A description of the environment. */ diff --git a/sdk/nodejs/batch/getJobDefinition.ts b/sdk/nodejs/batch/getJobDefinition.ts index 85a1171f6d..7cf1b36b8d 100644 --- a/sdk/nodejs/batch/getJobDefinition.ts +++ b/sdk/nodejs/batch/getJobDefinition.ts @@ -13,12 +13,15 @@ import * as utilities from "../utilities"; export function getJobDefinition(args: GetJobDefinitionArgs, opts?: pulumi.InvokeOptions): Promise { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:batch:getJobDefinition", { - "id": args.id, + "jobDefinitionName": args.jobDefinitionName, }, opts); } export interface GetJobDefinitionArgs { - id: string; + /** + * The name of the job definition. + */ + jobDefinitionName: string; } export interface GetJobDefinitionResult { @@ -34,7 +37,6 @@ export interface GetJobDefinitionResult { * An object with properties that are specific to Amazon EKS-based jobs. When `eksProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `nodeProperties` . */ readonly eksProperties?: outputs.batch.JobDefinitionEksProperties; - readonly id?: string; /** * An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` . * @@ -43,10 +45,8 @@ export interface GetJobDefinitionResult { readonly nodeProperties?: outputs.batch.JobDefinitionNodeProperties; /** * Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - * - * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. */ - readonly parameters?: any; + readonly parameters?: {[key: string]: string}; /** * The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . */ @@ -64,15 +64,13 @@ export interface GetJobDefinitionResult { */ readonly schedulingPriority?: number; /** - * The tags that are applied to the job definition. - * - * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + * A key-value pair to associate with a resource. */ - readonly tags?: any; + readonly tags?: {[key: string]: string}; /** * The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. */ - readonly timeout?: outputs.batch.JobDefinitionTimeout; + readonly timeout?: outputs.batch.JobDefinitionJobTimeout; /** * The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . * @@ -89,10 +87,13 @@ export interface GetJobDefinitionResult { export function getJobDefinitionOutput(args: GetJobDefinitionOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("aws-native:batch:getJobDefinition", { - "id": args.id, + "jobDefinitionName": args.jobDefinitionName, }, opts); } export interface GetJobDefinitionOutputArgs { - id: pulumi.Input; + /** + * The name of the job definition. + */ + jobDefinitionName: pulumi.Input; } diff --git a/sdk/nodejs/batch/jobDefinition.ts b/sdk/nodejs/batch/jobDefinition.ts index 32a5705999..bead8e1160 100644 --- a/sdk/nodejs/batch/jobDefinition.ts +++ b/sdk/nodejs/batch/jobDefinition.ts @@ -37,7 +37,6 @@ export class JobDefinition extends pulumi.CustomResource { return obj['__pulumiType'] === JobDefinition.__pulumiType; } - public /*out*/ readonly awsId!: pulumi.Output; /** * An object with properties specific to Amazon ECS-based jobs. When `containerProperties` is used in the job definition, it can't be used in addition to `eksProperties` , `ecsProperties` , or `nodeProperties` . */ @@ -62,10 +61,8 @@ export class JobDefinition extends pulumi.CustomResource { public readonly nodeProperties!: pulumi.Output; /** * Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - * - * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. */ - public readonly parameters!: pulumi.Output; + public readonly parameters!: pulumi.Output<{[key: string]: string} | undefined>; /** * The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . */ @@ -83,15 +80,13 @@ export class JobDefinition extends pulumi.CustomResource { */ public readonly schedulingPriority!: pulumi.Output; /** - * The tags that are applied to the job definition. - * - * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + * A key-value pair to associate with a resource. */ - public readonly tags!: pulumi.Output; + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; /** * The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. */ - public readonly timeout!: pulumi.Output; + public readonly timeout!: pulumi.Output; /** * The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . * @@ -129,9 +124,7 @@ export class JobDefinition extends pulumi.CustomResource { resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["timeout"] = args ? args.timeout : undefined; resourceInputs["type"] = args ? args.type : undefined; - resourceInputs["awsId"] = undefined /*out*/; } else { - resourceInputs["awsId"] = undefined /*out*/; resourceInputs["containerProperties"] = undefined /*out*/; resourceInputs["ecsProperties"] = undefined /*out*/; resourceInputs["eksProperties"] = undefined /*out*/; @@ -181,10 +174,8 @@ export interface JobDefinitionArgs { nodeProperties?: pulumi.Input; /** * Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - * - * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. */ - parameters?: any; + parameters?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . */ @@ -202,15 +193,13 @@ export interface JobDefinitionArgs { */ schedulingPriority?: pulumi.Input; /** - * The tags that are applied to the job definition. - * - * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + * A key-value pair to associate with a resource. */ - tags?: any; + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. */ - timeout?: pulumi.Input; + timeout?: pulumi.Input; /** * The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . * diff --git a/sdk/nodejs/cassandra/getKeyspace.ts b/sdk/nodejs/cassandra/getKeyspace.ts index 927b17dda2..9f1d7f0de7 100644 --- a/sdk/nodejs/cassandra/getKeyspace.ts +++ b/sdk/nodejs/cassandra/getKeyspace.ts @@ -25,6 +25,19 @@ export interface GetKeyspaceArgs { } export interface GetKeyspaceResult { + /** + * Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + */ + readonly clientSideTimestampsEnabled?: boolean; + /** + * Specifies the `ReplicationStrategy` of a keyspace. The options are: + * + * - `SINGLE_REGION` for a single Region keyspace (optional) or + * - `MULTI_REGION` for a multi-Region keyspace + * + * If no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in. + */ + readonly replicationSpecification?: outputs.cassandra.KeyspaceReplicationSpecification; /** * An array of key-value pairs to apply to this resource. * diff --git a/sdk/nodejs/cassandra/getType.ts b/sdk/nodejs/cassandra/getType.ts new file mode 100644 index 0000000000..a535eba92e --- /dev/null +++ b/sdk/nodejs/cassandra/getType.ts @@ -0,0 +1,71 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Resource schema for AWS::Cassandra::Type + */ +export function getType(args: GetTypeArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:cassandra:getType", { + "keyspaceName": args.keyspaceName, + "typeName": args.typeName, + }, opts); +} + +export interface GetTypeArgs { + /** + * Name of the Keyspace which contains the User-Defined Type. + */ + keyspaceName: string; + /** + * Name of the User-Defined Type. + */ + typeName: string; +} + +export interface GetTypeResult { + /** + * List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + */ + readonly directParentTypes?: string[]; + /** + * List of Tables that directly reference the User-Defined Type in their columns. + */ + readonly directReferringTables?: string[]; + /** + * ARN of the Keyspace which contains the User-Defined Type. + */ + readonly keyspaceArn?: string; + /** + * Timestamp of the last time the User-Defined Type's meta data was modified. + */ + readonly lastModifiedTimestamp?: number; + /** + * Maximum nesting depth of the User-Defined Type across the field types. + */ + readonly maxNestingDepth?: number; +} +/** + * Resource schema for AWS::Cassandra::Type + */ +export function getTypeOutput(args: GetTypeOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("aws-native:cassandra:getType", { + "keyspaceName": args.keyspaceName, + "typeName": args.typeName, + }, opts); +} + +export interface GetTypeOutputArgs { + /** + * Name of the Keyspace which contains the User-Defined Type. + */ + keyspaceName: pulumi.Input; + /** + * Name of the User-Defined Type. + */ + typeName: pulumi.Input; +} diff --git a/sdk/nodejs/cassandra/index.ts b/sdk/nodejs/cassandra/index.ts index 0e3d42cbf4..92d3e25ce2 100644 --- a/sdk/nodejs/cassandra/index.ts +++ b/sdk/nodejs/cassandra/index.ts @@ -15,6 +15,11 @@ export const getTable: typeof import("./getTable").getTable = null as any; export const getTableOutput: typeof import("./getTable").getTableOutput = null as any; utilities.lazyLoad(exports, ["getTable","getTableOutput"], () => require("./getTable")); +export { GetTypeArgs, GetTypeResult, GetTypeOutputArgs } from "./getType"; +export const getType: typeof import("./getType").getType = null as any; +export const getTypeOutput: typeof import("./getType").getTypeOutput = null as any; +utilities.lazyLoad(exports, ["getType","getTypeOutput"], () => require("./getType")); + export { KeyspaceArgs } from "./keyspace"; export type Keyspace = import("./keyspace").Keyspace; export const Keyspace: typeof import("./keyspace").Keyspace = null as any; @@ -25,6 +30,11 @@ export type Table = import("./table").Table; export const Table: typeof import("./table").Table = null as any; utilities.lazyLoad(exports, ["Table"], () => require("./table")); +export { TypeArgs } from "./type"; +export type Type = import("./type").Type; +export const Type: typeof import("./type").Type = null as any; +utilities.lazyLoad(exports, ["Type"], () => require("./type")); + // Export enums: export * from "../types/enums/cassandra"; @@ -37,6 +47,8 @@ const _module = { return new Keyspace(name, undefined, { urn }) case "aws-native:cassandra:Table": return new Table(name, undefined, { urn }) + case "aws-native:cassandra:Type": + return new Type(name, undefined, { urn }) default: throw new Error(`unknown resource type ${type}`); } diff --git a/sdk/nodejs/cassandra/keyspace.ts b/sdk/nodejs/cassandra/keyspace.ts index b2de841d18..3ba572e098 100644 --- a/sdk/nodejs/cassandra/keyspace.ts +++ b/sdk/nodejs/cassandra/keyspace.ts @@ -98,6 +98,10 @@ export class Keyspace extends pulumi.CustomResource { return obj['__pulumiType'] === Keyspace.__pulumiType; } + /** + * Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + */ + public readonly clientSideTimestampsEnabled!: pulumi.Output; /** * Name for Cassandra keyspace */ @@ -129,16 +133,18 @@ export class Keyspace extends pulumi.CustomResource { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { + resourceInputs["clientSideTimestampsEnabled"] = args ? args.clientSideTimestampsEnabled : undefined; resourceInputs["keyspaceName"] = args ? args.keyspaceName : undefined; resourceInputs["replicationSpecification"] = args ? args.replicationSpecification : undefined; resourceInputs["tags"] = args ? args.tags : undefined; } else { + resourceInputs["clientSideTimestampsEnabled"] = undefined /*out*/; resourceInputs["keyspaceName"] = undefined /*out*/; resourceInputs["replicationSpecification"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["keyspaceName", "replicationSpecification"] }; + const replaceOnChanges = { replaceOnChanges: ["keyspaceName"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Keyspace.__pulumiType, name, resourceInputs, opts); } @@ -148,6 +154,10 @@ export class Keyspace extends pulumi.CustomResource { * The set of arguments for constructing a Keyspace resource. */ export interface KeyspaceArgs { + /** + * Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + */ + clientSideTimestampsEnabled?: pulumi.Input; /** * Name for Cassandra keyspace */ diff --git a/sdk/nodejs/cassandra/type.ts b/sdk/nodejs/cassandra/type.ts new file mode 100644 index 0000000000..40549843b5 --- /dev/null +++ b/sdk/nodejs/cassandra/type.ts @@ -0,0 +1,131 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Resource schema for AWS::Cassandra::Type + */ +export class Type extends pulumi.CustomResource { + /** + * Get an existing Type resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Type { + return new Type(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:cassandra:Type'; + + /** + * Returns true if the given object is an instance of Type. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is Type { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Type.__pulumiType; + } + + /** + * List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + */ + public /*out*/ readonly directParentTypes!: pulumi.Output; + /** + * List of Tables that directly reference the User-Defined Type in their columns. + */ + public /*out*/ readonly directReferringTables!: pulumi.Output; + /** + * Field definitions of the User-Defined Type + */ + public readonly fields!: pulumi.Output; + /** + * ARN of the Keyspace which contains the User-Defined Type. + */ + public /*out*/ readonly keyspaceArn!: pulumi.Output; + /** + * Name of the Keyspace which contains the User-Defined Type. + */ + public readonly keyspaceName!: pulumi.Output; + /** + * Timestamp of the last time the User-Defined Type's meta data was modified. + */ + public /*out*/ readonly lastModifiedTimestamp!: pulumi.Output; + /** + * Maximum nesting depth of the User-Defined Type across the field types. + */ + public /*out*/ readonly maxNestingDepth!: pulumi.Output; + /** + * Name of the User-Defined Type. + */ + public readonly typeName!: pulumi.Output; + + /** + * Create a Type resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: TypeArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.fields === undefined) && !opts.urn) { + throw new Error("Missing required property 'fields'"); + } + if ((!args || args.keyspaceName === undefined) && !opts.urn) { + throw new Error("Missing required property 'keyspaceName'"); + } + resourceInputs["fields"] = args ? args.fields : undefined; + resourceInputs["keyspaceName"] = args ? args.keyspaceName : undefined; + resourceInputs["typeName"] = args ? args.typeName : undefined; + resourceInputs["directParentTypes"] = undefined /*out*/; + resourceInputs["directReferringTables"] = undefined /*out*/; + resourceInputs["keyspaceArn"] = undefined /*out*/; + resourceInputs["lastModifiedTimestamp"] = undefined /*out*/; + resourceInputs["maxNestingDepth"] = undefined /*out*/; + } else { + resourceInputs["directParentTypes"] = undefined /*out*/; + resourceInputs["directReferringTables"] = undefined /*out*/; + resourceInputs["fields"] = undefined /*out*/; + resourceInputs["keyspaceArn"] = undefined /*out*/; + resourceInputs["keyspaceName"] = undefined /*out*/; + resourceInputs["lastModifiedTimestamp"] = undefined /*out*/; + resourceInputs["maxNestingDepth"] = undefined /*out*/; + resourceInputs["typeName"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["fields[*]", "keyspaceName", "typeName"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(Type.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Type resource. + */ +export interface TypeArgs { + /** + * Field definitions of the User-Defined Type + */ + fields: pulumi.Input[]>; + /** + * Name of the Keyspace which contains the User-Defined Type. + */ + keyspaceName: pulumi.Input; + /** + * Name of the User-Defined Type. + */ + typeName?: pulumi.Input; +} diff --git a/sdk/nodejs/cleanrooms/configuredTable.ts b/sdk/nodejs/cleanrooms/configuredTable.ts index 890e204c7f..3dd9d1070a 100644 --- a/sdk/nodejs/cleanrooms/configuredTable.ts +++ b/sdk/nodejs/cleanrooms/configuredTable.ts @@ -72,7 +72,7 @@ export class ConfiguredTable extends pulumi.CustomResource { /** * The table that this configured table represents. */ - public readonly tableReference!: pulumi.Output; + public readonly tableReference!: pulumi.Output; /** * An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. */ @@ -152,7 +152,7 @@ export interface ConfiguredTableArgs { /** * The table that this configured table represents. */ - tableReference: pulumi.Input; + tableReference: pulumi.Input; /** * An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. */ diff --git a/sdk/nodejs/cloudformation/getStack.ts b/sdk/nodejs/cloudformation/getStack.ts index 275e26db91..9ffbbe97ca 100644 --- a/sdk/nodejs/cloudformation/getStack.ts +++ b/sdk/nodejs/cloudformation/getStack.ts @@ -26,7 +26,7 @@ export interface GetStackArgs { export interface GetStackResult { /** - * In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + * In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. * * - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` * @@ -36,30 +36,30 @@ export interface GetStackResult { * * - If you have IAM resources, you can specify either capability. * - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - * - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + * - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. * * If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. * - * - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - * - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - * - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - * - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - * - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - * - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - * - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + * - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + * - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + * - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + * - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + * - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + * - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + * - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) * - * For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + * For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . * - `CAPABILITY_AUTO_EXPAND` * - * Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + * Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . * * If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. * * > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. * > - * > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + * > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. * - * For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + * For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . */ readonly capabilities?: enums.cloudformation.StackCapabilitiesItem[]; /** @@ -81,9 +81,9 @@ export interface GetStackResult { */ readonly disableRollback?: boolean; /** - * Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + * Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. * - * For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + * For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. */ readonly enableTerminationProtection?: boolean; /** @@ -115,9 +115,9 @@ export interface GetStackResult { */ readonly parentId?: string; /** - * The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + * The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. * - * If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + * If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. */ readonly roleArn?: string; /** @@ -131,7 +131,7 @@ export interface GetStackResult { */ readonly stackId?: string; /** - * Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + * Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. * * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. */ @@ -149,7 +149,7 @@ export interface GetStackResult { */ readonly tags?: outputs.Tag[]; /** - * Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + * Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. * * Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. * diff --git a/sdk/nodejs/cloudformation/stack.ts b/sdk/nodejs/cloudformation/stack.ts index a4dbc505fe..0f2dcd3c49 100644 --- a/sdk/nodejs/cloudformation/stack.ts +++ b/sdk/nodejs/cloudformation/stack.ts @@ -38,7 +38,7 @@ export class Stack extends pulumi.CustomResource { } /** - * In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + * In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. * * - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` * @@ -48,30 +48,30 @@ export class Stack extends pulumi.CustomResource { * * - If you have IAM resources, you can specify either capability. * - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - * - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + * - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. * * If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. * - * - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - * - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - * - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - * - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - * - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - * - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - * - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + * - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + * - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + * - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + * - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + * - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + * - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + * - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) * - * For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + * For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . * - `CAPABILITY_AUTO_EXPAND` * - * Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + * Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . * * If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. * * > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. * > - * > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + * > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. * - * For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + * For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . */ public readonly capabilities!: pulumi.Output; /** @@ -93,9 +93,9 @@ export class Stack extends pulumi.CustomResource { */ public readonly disableRollback!: pulumi.Output; /** - * Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + * Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. * - * For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + * For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. */ public readonly enableTerminationProtection!: pulumi.Output; /** @@ -127,9 +127,9 @@ export class Stack extends pulumi.CustomResource { */ public /*out*/ readonly parentId!: pulumi.Output; /** - * The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + * The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. * - * If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + * If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. */ public readonly roleArn!: pulumi.Output; /** @@ -149,7 +149,7 @@ export class Stack extends pulumi.CustomResource { */ public readonly stackName!: pulumi.Output; /** - * Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + * Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. * * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. */ @@ -171,7 +171,7 @@ export class Stack extends pulumi.CustomResource { */ public readonly tags!: pulumi.Output; /** - * Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + * Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. * * Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. * @@ -179,7 +179,7 @@ export class Stack extends pulumi.CustomResource { */ public readonly templateBody!: pulumi.Output; /** - * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. * * Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. */ @@ -262,7 +262,7 @@ export class Stack extends pulumi.CustomResource { */ export interface StackArgs { /** - * In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + * In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. * * - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` * @@ -272,30 +272,30 @@ export interface StackArgs { * * - If you have IAM resources, you can specify either capability. * - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - * - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + * - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. * * If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. * - * - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - * - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - * - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - * - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - * - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - * - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - * - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + * - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + * - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + * - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + * - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + * - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + * - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + * - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) * - * For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + * For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . * - `CAPABILITY_AUTO_EXPAND` * - * Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + * Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . * * If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. * * > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. * > - * > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + * > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. * - * For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + * For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . */ capabilities?: pulumi.Input[]>; /** @@ -309,9 +309,9 @@ export interface StackArgs { */ disableRollback?: pulumi.Input; /** - * Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + * Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. * - * For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + * For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. */ enableTerminationProtection?: pulumi.Input; /** @@ -329,9 +329,9 @@ export interface StackArgs { */ parameters?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + * The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. * - * If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + * If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. */ roleArn?: pulumi.Input; /** @@ -341,7 +341,7 @@ export interface StackArgs { */ stackName?: pulumi.Input; /** - * Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + * Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. * * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. */ @@ -359,7 +359,7 @@ export interface StackArgs { */ tags?: pulumi.Input[]>; /** - * Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + * Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. * * Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. * @@ -367,7 +367,7 @@ export interface StackArgs { */ templateBody?: any; /** - * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. * * Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. */ diff --git a/sdk/nodejs/cloudformation/stackSet.ts b/sdk/nodejs/cloudformation/stackSet.ts index 0446d88b03..0bac638558 100644 --- a/sdk/nodejs/cloudformation/stackSet.ts +++ b/sdk/nodejs/cloudformation/stackSet.ts @@ -66,7 +66,7 @@ export class StackSet extends pulumi.CustomResource { */ public readonly managedExecution!: pulumi.Output; /** - * The user-specified preferences for how AWS CloudFormation performs a stack set operation. + * The user-specified preferences for how CloudFormation performs a stack set operation. */ public readonly operationPreferences!: pulumi.Output; /** @@ -190,7 +190,7 @@ export interface StackSetArgs { */ managedExecution?: pulumi.Input; /** - * The user-specified preferences for how AWS CloudFormation performs a stack set operation. + * The user-specified preferences for how CloudFormation performs a stack set operation. */ operationPreferences?: pulumi.Input; /** diff --git a/sdk/nodejs/connect/getQueue.ts b/sdk/nodejs/connect/getQueue.ts index b8a05771e4..407d3a120c 100644 --- a/sdk/nodejs/connect/getQueue.ts +++ b/sdk/nodejs/connect/getQueue.ts @@ -49,6 +49,10 @@ export interface GetQueueResult { * The outbound caller ID name, number, and outbound whisper flow. */ readonly outboundCallerConfig?: outputs.connect.QueueOutboundCallerConfig; + /** + * The outbound email address ID. + */ + readonly outboundEmailConfig?: outputs.connect.QueueOutboundEmailConfig; /** * The Amazon Resource Name (ARN) for the queue. */ diff --git a/sdk/nodejs/connect/getRule.ts b/sdk/nodejs/connect/getRule.ts index 20f2b4e064..0e953881ec 100644 --- a/sdk/nodejs/connect/getRule.ts +++ b/sdk/nodejs/connect/getRule.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS:Connect::Rule + * Creates a rule for the specified CON instance. */ export function getRule(args: GetRuleArgs, opts?: pulumi.InvokeOptions): Promise { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); @@ -26,11 +26,11 @@ export interface GetRuleArgs { export interface GetRuleResult { /** - * The list of actions that will be executed when a rule is triggered. + * A list of actions to be run when the rule is triggered. */ readonly actions?: outputs.connect.RuleActions; /** - * The conditions of a rule. + * The conditions of the rule. */ readonly function?: string; /** @@ -38,7 +38,8 @@ export interface GetRuleResult { */ readonly name?: string; /** - * The publish status of a rule, either draft or published. + * The publish status of the rule. + * *Allowed values*: ``DRAFT`` | ``PUBLISHED`` */ readonly publishStatus?: enums.connect.RulePublishStatus; /** @@ -46,12 +47,12 @@ export interface GetRuleResult { */ readonly ruleArn?: string; /** - * One or more tags. + * The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. */ readonly tags?: outputs.Tag[]; } /** - * Resource Type definition for AWS:Connect::Rule + * Creates a rule for the specified CON instance. */ export function getRuleOutput(args: GetRuleOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); diff --git a/sdk/nodejs/connect/queue.ts b/sdk/nodejs/connect/queue.ts index 5de438c8ce..5cc8ea5109 100644 --- a/sdk/nodejs/connect/queue.ts +++ b/sdk/nodejs/connect/queue.ts @@ -61,6 +61,10 @@ export class Queue extends pulumi.CustomResource { * The outbound caller ID name, number, and outbound whisper flow. */ public readonly outboundCallerConfig!: pulumi.Output; + /** + * The outbound email address ID. + */ + public readonly outboundEmailConfig!: pulumi.Output; /** * The Amazon Resource Name (ARN) for the queue. */ @@ -105,6 +109,7 @@ export class Queue extends pulumi.CustomResource { resourceInputs["maxContacts"] = args ? args.maxContacts : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["outboundCallerConfig"] = args ? args.outboundCallerConfig : undefined; + resourceInputs["outboundEmailConfig"] = args ? args.outboundEmailConfig : undefined; resourceInputs["quickConnectArns"] = args ? args.quickConnectArns : undefined; resourceInputs["status"] = args ? args.status : undefined; resourceInputs["tags"] = args ? args.tags : undefined; @@ -117,6 +122,7 @@ export class Queue extends pulumi.CustomResource { resourceInputs["maxContacts"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["outboundCallerConfig"] = undefined /*out*/; + resourceInputs["outboundEmailConfig"] = undefined /*out*/; resourceInputs["queueArn"] = undefined /*out*/; resourceInputs["quickConnectArns"] = undefined /*out*/; resourceInputs["status"] = undefined /*out*/; @@ -156,6 +162,10 @@ export interface QueueArgs { * The outbound caller ID name, number, and outbound whisper flow. */ outboundCallerConfig?: pulumi.Input; + /** + * The outbound email address ID. + */ + outboundEmailConfig?: pulumi.Input; /** * The quick connects available to agents who are working the queue. */ diff --git a/sdk/nodejs/connect/rule.ts b/sdk/nodejs/connect/rule.ts index 41df48950e..7dc36cdae2 100644 --- a/sdk/nodejs/connect/rule.ts +++ b/sdk/nodejs/connect/rule.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS:Connect::Rule + * Creates a rule for the specified CON instance. */ export class Rule extends pulumi.CustomResource { /** @@ -38,11 +38,11 @@ export class Rule extends pulumi.CustomResource { } /** - * The list of actions that will be executed when a rule is triggered. + * A list of actions to be run when the rule is triggered. */ public readonly actions!: pulumi.Output; /** - * The conditions of a rule. + * The conditions of the rule. */ public readonly function!: pulumi.Output; /** @@ -54,7 +54,8 @@ export class Rule extends pulumi.CustomResource { */ public readonly name!: pulumi.Output; /** - * The publish status of a rule, either draft or published. + * The publish status of the rule. + * *Allowed values*: ``DRAFT`` | ``PUBLISHED`` */ public readonly publishStatus!: pulumi.Output; /** @@ -62,11 +63,11 @@ export class Rule extends pulumi.CustomResource { */ public /*out*/ readonly ruleArn!: pulumi.Output; /** - * One or more tags. + * The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. */ public readonly tags!: pulumi.Output; /** - * The event source that triggers the rule. + * The event source to trigger the rule. */ public readonly triggerEventSource!: pulumi.Output; @@ -126,11 +127,11 @@ export class Rule extends pulumi.CustomResource { */ export interface RuleArgs { /** - * The list of actions that will be executed when a rule is triggered. + * A list of actions to be run when the rule is triggered. */ actions: pulumi.Input; /** - * The conditions of a rule. + * The conditions of the rule. */ function: pulumi.Input; /** @@ -142,15 +143,16 @@ export interface RuleArgs { */ name?: pulumi.Input; /** - * The publish status of a rule, either draft or published. + * The publish status of the rule. + * *Allowed values*: ``DRAFT`` | ``PUBLISHED`` */ publishStatus: pulumi.Input; /** - * One or more tags. + * The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. */ tags?: pulumi.Input[]>; /** - * The event source that triggers the rule. + * The event source to trigger the rule. */ triggerEventSource: pulumi.Input; } diff --git a/sdk/nodejs/ec2/getVpcEndpoint.ts b/sdk/nodejs/ec2/getVpcEndpoint.ts index f16d3b99c4..29262e0c36 100644 --- a/sdk/nodejs/ec2/getVpcEndpoint.ts +++ b/sdk/nodejs/ec2/getVpcEndpoint.ts @@ -2,6 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** @@ -42,10 +45,12 @@ export interface GetVpcEndpointResult { * If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change. */ readonly dnsEntries?: string[]; + readonly dnsOptions?: outputs.ec2.VpcEndpointDnsOptionsSpecification; /** * The ID of the VPC endpoint. */ readonly id?: string; + readonly ipAddressType?: enums.ec2.VpcEndpointIpAddressType; /** * (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. */ diff --git a/sdk/nodejs/ec2/vpcEndpoint.ts b/sdk/nodejs/ec2/vpcEndpoint.ts index b3b566b167..d32af714a0 100644 --- a/sdk/nodejs/ec2/vpcEndpoint.ts +++ b/sdk/nodejs/ec2/vpcEndpoint.ts @@ -61,6 +61,8 @@ export class VpcEndpoint extends pulumi.CustomResource { * If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the DNS entries in the list will change. */ public /*out*/ readonly dnsEntries!: pulumi.Output; + public readonly dnsOptions!: pulumi.Output; + public readonly ipAddressType!: pulumi.Output; /** * (Interface endpoints) The network interface IDs. If you update the `PrivateDnsEnabled` or `SubnetIds` properties, the items in this list might change. */ @@ -80,6 +82,7 @@ export class VpcEndpoint extends pulumi.CustomResource { * Default: ``false`` */ public readonly privateDnsEnabled!: pulumi.Output; + public readonly resourceConfigurationArn!: pulumi.Output; /** * The IDs of the route tables. Routing is supported only for gateway endpoints. */ @@ -91,7 +94,8 @@ export class VpcEndpoint extends pulumi.CustomResource { /** * The name of the endpoint service. */ - public readonly serviceName!: pulumi.Output; + public readonly serviceName!: pulumi.Output; + public readonly serviceNetworkArn!: pulumi.Output; /** * The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. */ @@ -117,17 +121,18 @@ export class VpcEndpoint extends pulumi.CustomResource { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { - if ((!args || args.serviceName === undefined) && !opts.urn) { - throw new Error("Missing required property 'serviceName'"); - } if ((!args || args.vpcId === undefined) && !opts.urn) { throw new Error("Missing required property 'vpcId'"); } + resourceInputs["dnsOptions"] = args ? args.dnsOptions : undefined; + resourceInputs["ipAddressType"] = args ? args.ipAddressType : undefined; resourceInputs["policyDocument"] = args ? args.policyDocument : undefined; resourceInputs["privateDnsEnabled"] = args ? args.privateDnsEnabled : undefined; + resourceInputs["resourceConfigurationArn"] = args ? args.resourceConfigurationArn : undefined; resourceInputs["routeTableIds"] = args ? args.routeTableIds : undefined; resourceInputs["securityGroupIds"] = args ? args.securityGroupIds : undefined; resourceInputs["serviceName"] = args ? args.serviceName : undefined; + resourceInputs["serviceNetworkArn"] = args ? args.serviceNetworkArn : undefined; resourceInputs["subnetIds"] = args ? args.subnetIds : undefined; resourceInputs["vpcEndpointType"] = args ? args.vpcEndpointType : undefined; resourceInputs["vpcId"] = args ? args.vpcId : undefined; @@ -139,18 +144,22 @@ export class VpcEndpoint extends pulumi.CustomResource { resourceInputs["awsId"] = undefined /*out*/; resourceInputs["creationTimestamp"] = undefined /*out*/; resourceInputs["dnsEntries"] = undefined /*out*/; + resourceInputs["dnsOptions"] = undefined /*out*/; + resourceInputs["ipAddressType"] = undefined /*out*/; resourceInputs["networkInterfaceIds"] = undefined /*out*/; resourceInputs["policyDocument"] = undefined /*out*/; resourceInputs["privateDnsEnabled"] = undefined /*out*/; + resourceInputs["resourceConfigurationArn"] = undefined /*out*/; resourceInputs["routeTableIds"] = undefined /*out*/; resourceInputs["securityGroupIds"] = undefined /*out*/; resourceInputs["serviceName"] = undefined /*out*/; + resourceInputs["serviceNetworkArn"] = undefined /*out*/; resourceInputs["subnetIds"] = undefined /*out*/; resourceInputs["vpcEndpointType"] = undefined /*out*/; resourceInputs["vpcId"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["serviceName", "vpcEndpointType", "vpcId"] }; + const replaceOnChanges = { replaceOnChanges: ["resourceConfigurationArn", "serviceName", "serviceNetworkArn", "vpcEndpointType", "vpcId"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(VpcEndpoint.__pulumiType, name, resourceInputs, opts); } @@ -160,6 +169,8 @@ export class VpcEndpoint extends pulumi.CustomResource { * The set of arguments for constructing a VpcEndpoint resource. */ export interface VpcEndpointArgs { + dnsOptions?: pulumi.Input; + ipAddressType?: pulumi.Input; /** * An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints. * For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section: @@ -175,6 +186,7 @@ export interface VpcEndpointArgs { * Default: ``false`` */ privateDnsEnabled?: pulumi.Input; + resourceConfigurationArn?: pulumi.Input; /** * The IDs of the route tables. Routing is supported only for gateway endpoints. */ @@ -186,7 +198,8 @@ export interface VpcEndpointArgs { /** * The name of the endpoint service. */ - serviceName: pulumi.Input; + serviceName?: pulumi.Input; + serviceNetworkArn?: pulumi.Input; /** * The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. */ diff --git a/sdk/nodejs/ecs/getService.ts b/sdk/nodejs/ecs/getService.ts index 26592634ac..87ec58c9a8 100644 --- a/sdk/nodejs/ecs/getService.ts +++ b/sdk/nodejs/ecs/getService.ts @@ -34,8 +34,7 @@ export interface GetServiceArgs { export interface GetServiceResult { /** * Indicates whether to use Availability Zone rebalancing for the service. - * - * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. */ readonly availabilityZoneRebalancing?: enums.ecs.ServiceAvailabilityZoneRebalancing; /** @@ -64,9 +63,8 @@ export interface GetServiceResult { */ readonly enableExecuteCommand?: boolean; /** - * The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - * If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - * If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + * The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + * If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. */ readonly healthCheckGracePeriodSeconds?: number; /** diff --git a/sdk/nodejs/ecs/service.ts b/sdk/nodejs/ecs/service.ts index 6a26f9f997..ca7a34c1be 100644 --- a/sdk/nodejs/ecs/service.ts +++ b/sdk/nodejs/ecs/service.ts @@ -41,8 +41,7 @@ export class Service extends pulumi.CustomResource { /** * Indicates whether to use Availability Zone rebalancing for the service. - * - * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. */ public readonly availabilityZoneRebalancing!: pulumi.Output; /** @@ -79,9 +78,8 @@ export class Service extends pulumi.CustomResource { */ public readonly enableExecuteCommand!: pulumi.Output; /** - * The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - * If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - * If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + * The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + * If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. */ public readonly healthCheckGracePeriodSeconds!: pulumi.Output; /** @@ -258,8 +256,7 @@ export class Service extends pulumi.CustomResource { export interface ServiceArgs { /** * Indicates whether to use Availability Zone rebalancing for the service. - * - * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. */ availabilityZoneRebalancing?: pulumi.Input; /** @@ -296,9 +293,8 @@ export interface ServiceArgs { */ enableExecuteCommand?: pulumi.Input; /** - * The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - * If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - * If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + * The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + * If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. */ healthCheckGracePeriodSeconds?: pulumi.Input; /** diff --git a/sdk/nodejs/emrserverless/application.ts b/sdk/nodejs/emrserverless/application.ts index c46ecec84c..738731eca6 100644 --- a/sdk/nodejs/emrserverless/application.ts +++ b/sdk/nodejs/emrserverless/application.ts @@ -93,6 +93,10 @@ export class Application extends pulumi.CustomResource { * The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. */ public readonly runtimeConfiguration!: pulumi.Output; + /** + * The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + */ + public readonly schedulerConfiguration!: pulumi.Output; /** * Tag map with key and value */ @@ -135,6 +139,7 @@ export class Application extends pulumi.CustomResource { resourceInputs["networkConfiguration"] = args ? args.networkConfiguration : undefined; resourceInputs["releaseLabel"] = args ? args.releaseLabel : undefined; resourceInputs["runtimeConfiguration"] = args ? args.runtimeConfiguration : undefined; + resourceInputs["schedulerConfiguration"] = args ? args.schedulerConfiguration : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["type"] = args ? args.type : undefined; resourceInputs["workerTypeSpecifications"] = args ? args.workerTypeSpecifications : undefined; @@ -155,6 +160,7 @@ export class Application extends pulumi.CustomResource { resourceInputs["networkConfiguration"] = undefined /*out*/; resourceInputs["releaseLabel"] = undefined /*out*/; resourceInputs["runtimeConfiguration"] = undefined /*out*/; + resourceInputs["schedulerConfiguration"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["type"] = undefined /*out*/; resourceInputs["workerTypeSpecifications"] = undefined /*out*/; @@ -218,6 +224,10 @@ export interface ApplicationArgs { * The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. */ runtimeConfiguration?: pulumi.Input[]>; + /** + * The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + */ + schedulerConfiguration?: pulumi.Input; /** * Tag map with key and value */ diff --git a/sdk/nodejs/emrserverless/getApplication.ts b/sdk/nodejs/emrserverless/getApplication.ts index 99492a3df3..69cb18c94d 100644 --- a/sdk/nodejs/emrserverless/getApplication.ts +++ b/sdk/nodejs/emrserverless/getApplication.ts @@ -77,6 +77,10 @@ export interface GetApplicationResult { * The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. */ readonly runtimeConfiguration?: outputs.emrserverless.ApplicationConfigurationObject[]; + /** + * The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + */ + readonly schedulerConfiguration?: outputs.emrserverless.ApplicationSchedulerConfiguration; /** * Tag map with key and value */ diff --git a/sdk/nodejs/logs/getLogGroup.ts b/sdk/nodejs/logs/getLogGroup.ts index 069c91c5f7..44065ac357 100644 --- a/sdk/nodejs/logs/getLogGroup.ts +++ b/sdk/nodejs/logs/getLogGroup.ts @@ -40,6 +40,7 @@ export interface GetLogGroupResult { * 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. */ readonly dataProtectionPolicy?: any; + readonly fieldIndexPolicies?: any[]; /** * 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. diff --git a/sdk/nodejs/logs/getMetricFilter.ts b/sdk/nodejs/logs/getMetricFilter.ts index 53b26e1067..97b78c51c2 100644 --- a/sdk/nodejs/logs/getMetricFilter.ts +++ b/sdk/nodejs/logs/getMetricFilter.ts @@ -31,6 +31,12 @@ export interface GetMetricFilterArgs { } export interface GetMetricFilterResult { + /** + * This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + * + * If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + */ + readonly applyOnTransformedLogs?: boolean; /** * 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). */ diff --git a/sdk/nodejs/logs/getQueryDefinition.ts b/sdk/nodejs/logs/getQueryDefinition.ts index b9dff18453..12856ec467 100644 --- a/sdk/nodejs/logs/getQueryDefinition.ts +++ b/sdk/nodejs/logs/getQueryDefinition.ts @@ -2,6 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** @@ -34,6 +37,10 @@ export interface GetQueryDefinitionResult { * Unique identifier of a query definition */ readonly queryDefinitionId?: string; + /** + * Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + */ + readonly queryLanguage?: enums.logs.QueryDefinitionQueryLanguage; /** * The query string to use for this definition */ diff --git a/sdk/nodejs/logs/getSubscriptionFilter.ts b/sdk/nodejs/logs/getSubscriptionFilter.ts index f90a062f7a..8f11ce5b30 100644 --- a/sdk/nodejs/logs/getSubscriptionFilter.ts +++ b/sdk/nodejs/logs/getSubscriptionFilter.ts @@ -36,6 +36,12 @@ export interface GetSubscriptionFilterArgs { } export interface GetSubscriptionFilterResult { + /** + * This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + * + * If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + */ + readonly applyOnTransformedLogs?: boolean; /** * The Amazon Resource Name (ARN) of the destination. */ diff --git a/sdk/nodejs/logs/getTransformer.ts b/sdk/nodejs/logs/getTransformer.ts new file mode 100644 index 0000000000..91e7c41115 --- /dev/null +++ b/sdk/nodejs/logs/getTransformer.ts @@ -0,0 +1,48 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + */ +export function getTransformer(args: GetTransformerArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:logs:getTransformer", { + "logGroupIdentifier": args.logGroupIdentifier, + }, opts); +} + +export interface GetTransformerArgs { + /** + * Existing log group that you want to associate with this transformer. + */ + logGroupIdentifier: string; +} + +export interface GetTransformerResult { + /** + * List of processors in a transformer + */ + readonly transformerConfig?: outputs.logs.TransformerProcessor[]; +} +/** + * Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + */ +export function getTransformerOutput(args: GetTransformerOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("aws-native:logs:getTransformer", { + "logGroupIdentifier": args.logGroupIdentifier, + }, opts); +} + +export interface GetTransformerOutputArgs { + /** + * Existing log group that you want to associate with this transformer. + */ + logGroupIdentifier: pulumi.Input; +} diff --git a/sdk/nodejs/logs/index.ts b/sdk/nodejs/logs/index.ts index 4509edbd7c..3546023524 100644 --- a/sdk/nodejs/logs/index.ts +++ b/sdk/nodejs/logs/index.ts @@ -90,6 +90,11 @@ export const getSubscriptionFilter: typeof import("./getSubscriptionFilter").get export const getSubscriptionFilterOutput: typeof import("./getSubscriptionFilter").getSubscriptionFilterOutput = null as any; utilities.lazyLoad(exports, ["getSubscriptionFilter","getSubscriptionFilterOutput"], () => require("./getSubscriptionFilter")); +export { GetTransformerArgs, GetTransformerResult, GetTransformerOutputArgs } from "./getTransformer"; +export const getTransformer: typeof import("./getTransformer").getTransformer = null as any; +export const getTransformerOutput: typeof import("./getTransformer").getTransformerOutput = null as any; +utilities.lazyLoad(exports, ["getTransformer","getTransformerOutput"], () => require("./getTransformer")); + export { IntegrationArgs } from "./integration"; export type Integration = import("./integration").Integration; export const Integration: typeof import("./integration").Integration = null as any; @@ -130,6 +135,11 @@ export type SubscriptionFilter = import("./subscriptionFilter").SubscriptionFilt export const SubscriptionFilter: typeof import("./subscriptionFilter").SubscriptionFilter = null as any; utilities.lazyLoad(exports, ["SubscriptionFilter"], () => require("./subscriptionFilter")); +export { TransformerArgs } from "./transformer"; +export type Transformer = import("./transformer").Transformer; +export const Transformer: typeof import("./transformer").Transformer = null as any; +utilities.lazyLoad(exports, ["Transformer"], () => require("./transformer")); + // Export enums: export * from "../types/enums/logs"; @@ -164,6 +174,8 @@ const _module = { return new ResourcePolicy(name, undefined, { urn }) case "aws-native:logs:SubscriptionFilter": return new SubscriptionFilter(name, undefined, { urn }) + case "aws-native:logs:Transformer": + return new Transformer(name, undefined, { urn }) default: throw new Error(`unknown resource type ${type}`); } diff --git a/sdk/nodejs/logs/logGroup.ts b/sdk/nodejs/logs/logGroup.ts index 08d987901f..2ecf317486 100644 --- a/sdk/nodejs/logs/logGroup.ts +++ b/sdk/nodejs/logs/logGroup.ts @@ -52,6 +52,7 @@ export class LogGroup extends pulumi.CustomResource { * 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 dataProtectionPolicy!: pulumi.Output; + public readonly fieldIndexPolicies!: pulumi.Output; /** * 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. @@ -94,6 +95,7 @@ export class LogGroup extends pulumi.CustomResource { opts = opts || {}; if (!opts.id) { resourceInputs["dataProtectionPolicy"] = args ? args.dataProtectionPolicy : undefined; + resourceInputs["fieldIndexPolicies"] = args ? args.fieldIndexPolicies : undefined; resourceInputs["kmsKeyId"] = args ? args.kmsKeyId : undefined; resourceInputs["logGroupClass"] = args ? args.logGroupClass : undefined; resourceInputs["logGroupName"] = args ? args.logGroupName : undefined; @@ -103,6 +105,7 @@ export class LogGroup extends pulumi.CustomResource { } else { resourceInputs["arn"] = undefined /*out*/; resourceInputs["dataProtectionPolicy"] = undefined /*out*/; + resourceInputs["fieldIndexPolicies"] = undefined /*out*/; resourceInputs["kmsKeyId"] = undefined /*out*/; resourceInputs["logGroupClass"] = undefined /*out*/; resourceInputs["logGroupName"] = undefined /*out*/; @@ -127,6 +130,7 @@ export interface LogGroupArgs { * 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. */ dataProtectionPolicy?: any; + fieldIndexPolicies?: pulumi.Input; /** * 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. diff --git a/sdk/nodejs/logs/metricFilter.ts b/sdk/nodejs/logs/metricFilter.ts index e93796d942..7fb417891c 100644 --- a/sdk/nodejs/logs/metricFilter.ts +++ b/sdk/nodejs/logs/metricFilter.ts @@ -38,6 +38,12 @@ export class MetricFilter extends pulumi.CustomResource { return obj['__pulumiType'] === MetricFilter.__pulumiType; } + /** + * This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + * + * If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + */ + public readonly applyOnTransformedLogs!: pulumi.Output; /** * The name of the metric filter. */ @@ -75,11 +81,13 @@ export class MetricFilter extends pulumi.CustomResource { if ((!args || args.metricTransformations === undefined) && !opts.urn) { throw new Error("Missing required property 'metricTransformations'"); } + resourceInputs["applyOnTransformedLogs"] = args ? args.applyOnTransformedLogs : undefined; resourceInputs["filterName"] = args ? args.filterName : undefined; resourceInputs["filterPattern"] = args ? args.filterPattern : undefined; resourceInputs["logGroupName"] = args ? args.logGroupName : undefined; resourceInputs["metricTransformations"] = args ? args.metricTransformations : undefined; } else { + resourceInputs["applyOnTransformedLogs"] = undefined /*out*/; resourceInputs["filterName"] = undefined /*out*/; resourceInputs["filterPattern"] = undefined /*out*/; resourceInputs["logGroupName"] = undefined /*out*/; @@ -96,6 +104,12 @@ export class MetricFilter extends pulumi.CustomResource { * The set of arguments for constructing a MetricFilter resource. */ export interface MetricFilterArgs { + /** + * This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + * + * If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + */ + applyOnTransformedLogs?: pulumi.Input; /** * The name of the metric filter. */ diff --git a/sdk/nodejs/logs/queryDefinition.ts b/sdk/nodejs/logs/queryDefinition.ts index 8794b715a1..c0e7a30b0a 100644 --- a/sdk/nodejs/logs/queryDefinition.ts +++ b/sdk/nodejs/logs/queryDefinition.ts @@ -2,6 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** @@ -46,6 +49,10 @@ export class QueryDefinition extends pulumi.CustomResource { * Unique identifier of a query definition */ public /*out*/ readonly queryDefinitionId!: pulumi.Output; + /** + * Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + */ + public readonly queryLanguage!: pulumi.Output; /** * The query string to use for this definition */ @@ -67,12 +74,14 @@ export class QueryDefinition extends pulumi.CustomResource { } resourceInputs["logGroupNames"] = args ? args.logGroupNames : undefined; resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["queryLanguage"] = args ? args.queryLanguage : undefined; resourceInputs["queryString"] = args ? args.queryString : undefined; resourceInputs["queryDefinitionId"] = undefined /*out*/; } else { resourceInputs["logGroupNames"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["queryDefinitionId"] = undefined /*out*/; + resourceInputs["queryLanguage"] = undefined /*out*/; resourceInputs["queryString"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -92,6 +101,10 @@ export interface QueryDefinitionArgs { * A name for the saved query definition */ name?: pulumi.Input; + /** + * Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + */ + queryLanguage?: pulumi.Input; /** * The query string to use for this definition */ diff --git a/sdk/nodejs/logs/subscriptionFilter.ts b/sdk/nodejs/logs/subscriptionFilter.ts index 2c52685779..6e04ca5b23 100644 --- a/sdk/nodejs/logs/subscriptionFilter.ts +++ b/sdk/nodejs/logs/subscriptionFilter.ts @@ -43,6 +43,12 @@ export class SubscriptionFilter extends pulumi.CustomResource { return obj['__pulumiType'] === SubscriptionFilter.__pulumiType; } + /** + * This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + * + * If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + */ + public readonly applyOnTransformedLogs!: pulumi.Output; /** * The Amazon Resource Name (ARN) of the destination. */ @@ -88,6 +94,7 @@ export class SubscriptionFilter extends pulumi.CustomResource { if ((!args || args.logGroupName === undefined) && !opts.urn) { throw new Error("Missing required property 'logGroupName'"); } + resourceInputs["applyOnTransformedLogs"] = args ? args.applyOnTransformedLogs : undefined; resourceInputs["destinationArn"] = args ? args.destinationArn : undefined; resourceInputs["distribution"] = args ? args.distribution : undefined; resourceInputs["filterName"] = args ? args.filterName : undefined; @@ -95,6 +102,7 @@ export class SubscriptionFilter extends pulumi.CustomResource { resourceInputs["logGroupName"] = args ? args.logGroupName : undefined; resourceInputs["roleArn"] = args ? args.roleArn : undefined; } else { + resourceInputs["applyOnTransformedLogs"] = undefined /*out*/; resourceInputs["destinationArn"] = undefined /*out*/; resourceInputs["distribution"] = undefined /*out*/; resourceInputs["filterName"] = undefined /*out*/; @@ -113,6 +121,12 @@ export class SubscriptionFilter extends pulumi.CustomResource { * The set of arguments for constructing a SubscriptionFilter resource. */ export interface SubscriptionFilterArgs { + /** + * This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + * + * If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + */ + applyOnTransformedLogs?: pulumi.Input; /** * The Amazon Resource Name (ARN) of the destination. */ diff --git a/sdk/nodejs/logs/transformer.ts b/sdk/nodejs/logs/transformer.ts new file mode 100644 index 0000000000..44d75cbd54 --- /dev/null +++ b/sdk/nodejs/logs/transformer.ts @@ -0,0 +1,91 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + */ +export class Transformer extends pulumi.CustomResource { + /** + * Get an existing Transformer resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Transformer { + return new Transformer(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:logs:Transformer'; + + /** + * Returns true if the given object is an instance of Transformer. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is Transformer { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Transformer.__pulumiType; + } + + /** + * Existing log group that you want to associate with this transformer. + */ + public readonly logGroupIdentifier!: pulumi.Output; + /** + * List of processors in a transformer + */ + public readonly transformerConfig!: pulumi.Output; + + /** + * Create a Transformer resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: TransformerArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.logGroupIdentifier === undefined) && !opts.urn) { + throw new Error("Missing required property 'logGroupIdentifier'"); + } + if ((!args || args.transformerConfig === undefined) && !opts.urn) { + throw new Error("Missing required property 'transformerConfig'"); + } + resourceInputs["logGroupIdentifier"] = args ? args.logGroupIdentifier : undefined; + resourceInputs["transformerConfig"] = args ? args.transformerConfig : undefined; + } else { + resourceInputs["logGroupIdentifier"] = undefined /*out*/; + resourceInputs["transformerConfig"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["logGroupIdentifier"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(Transformer.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Transformer resource. + */ +export interface TransformerArgs { + /** + * Existing log group that you want to associate with this transformer. + */ + logGroupIdentifier: pulumi.Input; + /** + * List of processors in a transformer + */ + transformerConfig: pulumi.Input[]>; +} diff --git a/sdk/nodejs/m2/environment.ts b/sdk/nodejs/m2/environment.ts index 2ece3d4eff..515843da76 100644 --- a/sdk/nodejs/m2/environment.ts +++ b/sdk/nodejs/m2/environment.ts @@ -73,6 +73,7 @@ export class Environment extends pulumi.CustomResource { * The name of the environment. */ public readonly name!: pulumi.Output; + public readonly networkType!: pulumi.Output; /** * Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. */ @@ -122,6 +123,7 @@ export class Environment extends pulumi.CustomResource { resourceInputs["instanceType"] = args ? args.instanceType : undefined; resourceInputs["kmsKeyId"] = args ? args.kmsKeyId : undefined; resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["networkType"] = args ? args.networkType : undefined; resourceInputs["preferredMaintenanceWindow"] = args ? args.preferredMaintenanceWindow : undefined; resourceInputs["publiclyAccessible"] = args ? args.publiclyAccessible : undefined; resourceInputs["securityGroupIds"] = args ? args.securityGroupIds : undefined; @@ -140,6 +142,7 @@ export class Environment extends pulumi.CustomResource { resourceInputs["instanceType"] = undefined /*out*/; resourceInputs["kmsKeyId"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; + resourceInputs["networkType"] = undefined /*out*/; resourceInputs["preferredMaintenanceWindow"] = undefined /*out*/; resourceInputs["publiclyAccessible"] = undefined /*out*/; resourceInputs["securityGroupIds"] = undefined /*out*/; @@ -148,7 +151,7 @@ export class Environment extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["description", "engineType", "kmsKeyId", "name", "publiclyAccessible", "securityGroupIds[*]", "storageConfigurations[*]", "subnetIds[*]"] }; + const replaceOnChanges = { replaceOnChanges: ["description", "engineType", "kmsKeyId", "name", "networkType", "publiclyAccessible", "securityGroupIds[*]", "storageConfigurations[*]", "subnetIds[*]"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Environment.__pulumiType, name, resourceInputs, opts); } @@ -186,6 +189,7 @@ export interface EnvironmentArgs { * The name of the environment. */ name?: pulumi.Input; + networkType?: pulumi.Input; /** * Configures a desired maintenance window for the environment. If you do not provide a value, a random system-generated value will be assigned. */ diff --git a/sdk/nodejs/msk/replicator.ts b/sdk/nodejs/msk/replicator.ts index 30ca057101..44b2b43e89 100644 --- a/sdk/nodejs/msk/replicator.ts +++ b/sdk/nodejs/msk/replicator.ts @@ -109,7 +109,7 @@ export class Replicator extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["description", "kafkaClusters[*]", "replicatorName", "serviceExecutionRoleArn"] }; + const replaceOnChanges = { replaceOnChanges: ["description", "kafkaClusters[*]", "replicationInfoList[*].sourceKafkaClusterArn", "replicationInfoList[*].targetCompressionType", "replicationInfoList[*].targetKafkaClusterArn", "replicationInfoList[*].topicReplication.startingPosition", "replicationInfoList[*].topicReplication.topicNameConfiguration", "replicatorName", "serviceExecutionRoleArn"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Replicator.__pulumiType, name, resourceInputs, opts); } diff --git a/sdk/nodejs/networkmanager/directConnectGatewayAttachment.ts b/sdk/nodejs/networkmanager/directConnectGatewayAttachment.ts new file mode 100644 index 0000000000..195fb9bc84 --- /dev/null +++ b/sdk/nodejs/networkmanager/directConnectGatewayAttachment.ts @@ -0,0 +1,200 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + */ +export class DirectConnectGatewayAttachment extends pulumi.CustomResource { + /** + * Get an existing DirectConnectGatewayAttachment resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): DirectConnectGatewayAttachment { + return new DirectConnectGatewayAttachment(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:networkmanager:DirectConnectGatewayAttachment'; + + /** + * Returns true if the given object is an instance of DirectConnectGatewayAttachment. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is DirectConnectGatewayAttachment { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === DirectConnectGatewayAttachment.__pulumiType; + } + + /** + * Id of the attachment. + */ + public /*out*/ readonly attachmentId!: pulumi.Output; + /** + * The policy rule number associated with the attachment. + */ + public /*out*/ readonly attachmentPolicyRuleNumber!: pulumi.Output; + /** + * Attachment type. + */ + public /*out*/ readonly attachmentType!: pulumi.Output; + /** + * The ARN of a core network for the Direct Connect Gateway attachment. + */ + public /*out*/ readonly coreNetworkArn!: pulumi.Output; + /** + * The ID of a core network for the Direct Connect Gateway attachment. + */ + public readonly coreNetworkId!: pulumi.Output; + /** + * Creation time of the attachment. + */ + public /*out*/ readonly createdAt!: pulumi.Output; + /** + * The ARN of the Direct Connect Gateway. + */ + public readonly directConnectGatewayArn!: pulumi.Output; + /** + * The Regions where the edges are located. + */ + public readonly edgeLocations!: pulumi.Output; + /** + * The name of the network function group attachment. + */ + public /*out*/ readonly networkFunctionGroupName!: pulumi.Output; + /** + * Owner account of the attachment. + */ + public /*out*/ readonly ownerAccountId!: pulumi.Output; + /** + * The attachment to move from one network function group to another. + */ + public readonly proposedNetworkFunctionGroupChange!: pulumi.Output; + /** + * The attachment to move from one segment to another. + */ + public readonly proposedSegmentChange!: pulumi.Output; + /** + * The ARN of the Resource. + */ + public /*out*/ readonly resourceArn!: pulumi.Output; + /** + * The name of the segment attachment.. + */ + public /*out*/ readonly segmentName!: pulumi.Output; + /** + * State of the attachment. + */ + public /*out*/ readonly state!: pulumi.Output; + /** + * Tags for the attachment. + */ + public readonly tags!: pulumi.Output; + /** + * Last update time of the attachment. + */ + public /*out*/ readonly updatedAt!: pulumi.Output; + + /** + * Create a DirectConnectGatewayAttachment resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: DirectConnectGatewayAttachmentArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.coreNetworkId === undefined) && !opts.urn) { + throw new Error("Missing required property 'coreNetworkId'"); + } + if ((!args || args.directConnectGatewayArn === undefined) && !opts.urn) { + throw new Error("Missing required property 'directConnectGatewayArn'"); + } + if ((!args || args.edgeLocations === undefined) && !opts.urn) { + throw new Error("Missing required property 'edgeLocations'"); + } + resourceInputs["coreNetworkId"] = args ? args.coreNetworkId : undefined; + resourceInputs["directConnectGatewayArn"] = args ? args.directConnectGatewayArn : undefined; + resourceInputs["edgeLocations"] = args ? args.edgeLocations : undefined; + resourceInputs["proposedNetworkFunctionGroupChange"] = args ? args.proposedNetworkFunctionGroupChange : undefined; + resourceInputs["proposedSegmentChange"] = args ? args.proposedSegmentChange : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["attachmentId"] = undefined /*out*/; + resourceInputs["attachmentPolicyRuleNumber"] = undefined /*out*/; + resourceInputs["attachmentType"] = undefined /*out*/; + resourceInputs["coreNetworkArn"] = undefined /*out*/; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["networkFunctionGroupName"] = undefined /*out*/; + resourceInputs["ownerAccountId"] = undefined /*out*/; + resourceInputs["resourceArn"] = undefined /*out*/; + resourceInputs["segmentName"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; + resourceInputs["updatedAt"] = undefined /*out*/; + } else { + resourceInputs["attachmentId"] = undefined /*out*/; + resourceInputs["attachmentPolicyRuleNumber"] = undefined /*out*/; + resourceInputs["attachmentType"] = undefined /*out*/; + resourceInputs["coreNetworkArn"] = undefined /*out*/; + resourceInputs["coreNetworkId"] = undefined /*out*/; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["directConnectGatewayArn"] = undefined /*out*/; + resourceInputs["edgeLocations"] = undefined /*out*/; + resourceInputs["networkFunctionGroupName"] = undefined /*out*/; + resourceInputs["ownerAccountId"] = undefined /*out*/; + resourceInputs["proposedNetworkFunctionGroupChange"] = undefined /*out*/; + resourceInputs["proposedSegmentChange"] = undefined /*out*/; + resourceInputs["resourceArn"] = undefined /*out*/; + resourceInputs["segmentName"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["updatedAt"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["coreNetworkId", "directConnectGatewayArn"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(DirectConnectGatewayAttachment.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a DirectConnectGatewayAttachment resource. + */ +export interface DirectConnectGatewayAttachmentArgs { + /** + * The ID of a core network for the Direct Connect Gateway attachment. + */ + coreNetworkId: pulumi.Input; + /** + * The ARN of the Direct Connect Gateway. + */ + directConnectGatewayArn: pulumi.Input; + /** + * The Regions where the edges are located. + */ + edgeLocations: pulumi.Input[]>; + /** + * The attachment to move from one network function group to another. + */ + proposedNetworkFunctionGroupChange?: pulumi.Input; + /** + * The attachment to move from one segment to another. + */ + proposedSegmentChange?: pulumi.Input; + /** + * Tags for the attachment. + */ + tags?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/networkmanager/getDirectConnectGatewayAttachment.ts b/sdk/nodejs/networkmanager/getDirectConnectGatewayAttachment.ts new file mode 100644 index 0000000000..6e6dce5814 --- /dev/null +++ b/sdk/nodejs/networkmanager/getDirectConnectGatewayAttachment.ts @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + */ +export function getDirectConnectGatewayAttachment(args: GetDirectConnectGatewayAttachmentArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:networkmanager:getDirectConnectGatewayAttachment", { + "attachmentId": args.attachmentId, + }, opts); +} + +export interface GetDirectConnectGatewayAttachmentArgs { + /** + * Id of the attachment. + */ + attachmentId: string; +} + +export interface GetDirectConnectGatewayAttachmentResult { + /** + * Id of the attachment. + */ + readonly attachmentId?: string; + /** + * The policy rule number associated with the attachment. + */ + readonly attachmentPolicyRuleNumber?: number; + /** + * Attachment type. + */ + readonly attachmentType?: string; + /** + * The ARN of a core network for the Direct Connect Gateway attachment. + */ + readonly coreNetworkArn?: string; + /** + * Creation time of the attachment. + */ + readonly createdAt?: string; + /** + * The Regions where the edges are located. + */ + readonly edgeLocations?: string[]; + /** + * The name of the network function group attachment. + */ + readonly networkFunctionGroupName?: string; + /** + * Owner account of the attachment. + */ + readonly ownerAccountId?: string; + /** + * The attachment to move from one network function group to another. + */ + readonly proposedNetworkFunctionGroupChange?: outputs.networkmanager.DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange; + /** + * The attachment to move from one segment to another. + */ + readonly proposedSegmentChange?: outputs.networkmanager.DirectConnectGatewayAttachmentProposedSegmentChange; + /** + * The ARN of the Resource. + */ + readonly resourceArn?: string; + /** + * The name of the segment attachment.. + */ + readonly segmentName?: string; + /** + * State of the attachment. + */ + readonly state?: string; + /** + * Tags for the attachment. + */ + readonly tags?: outputs.Tag[]; + /** + * Last update time of the attachment. + */ + readonly updatedAt?: string; +} +/** + * AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + */ +export function getDirectConnectGatewayAttachmentOutput(args: GetDirectConnectGatewayAttachmentOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("aws-native:networkmanager:getDirectConnectGatewayAttachment", { + "attachmentId": args.attachmentId, + }, opts); +} + +export interface GetDirectConnectGatewayAttachmentOutputArgs { + /** + * Id of the attachment. + */ + attachmentId: pulumi.Input; +} diff --git a/sdk/nodejs/networkmanager/index.ts b/sdk/nodejs/networkmanager/index.ts index 09b5d011d5..3a4b923147 100644 --- a/sdk/nodejs/networkmanager/index.ts +++ b/sdk/nodejs/networkmanager/index.ts @@ -30,6 +30,11 @@ export type Device = import("./device").Device; export const Device: typeof import("./device").Device = null as any; utilities.lazyLoad(exports, ["Device"], () => require("./device")); +export { DirectConnectGatewayAttachmentArgs } from "./directConnectGatewayAttachment"; +export type DirectConnectGatewayAttachment = import("./directConnectGatewayAttachment").DirectConnectGatewayAttachment; +export const DirectConnectGatewayAttachment: typeof import("./directConnectGatewayAttachment").DirectConnectGatewayAttachment = null as any; +utilities.lazyLoad(exports, ["DirectConnectGatewayAttachment"], () => require("./directConnectGatewayAttachment")); + export { GetConnectAttachmentArgs, GetConnectAttachmentResult, GetConnectAttachmentOutputArgs } from "./getConnectAttachment"; export const getConnectAttachment: typeof import("./getConnectAttachment").getConnectAttachment = null as any; export const getConnectAttachmentOutput: typeof import("./getConnectAttachment").getConnectAttachmentOutput = null as any; @@ -50,6 +55,11 @@ export const getDevice: typeof import("./getDevice").getDevice = null as any; export const getDeviceOutput: typeof import("./getDevice").getDeviceOutput = null as any; utilities.lazyLoad(exports, ["getDevice","getDeviceOutput"], () => require("./getDevice")); +export { GetDirectConnectGatewayAttachmentArgs, GetDirectConnectGatewayAttachmentResult, GetDirectConnectGatewayAttachmentOutputArgs } from "./getDirectConnectGatewayAttachment"; +export const getDirectConnectGatewayAttachment: typeof import("./getDirectConnectGatewayAttachment").getDirectConnectGatewayAttachment = null as any; +export const getDirectConnectGatewayAttachmentOutput: typeof import("./getDirectConnectGatewayAttachment").getDirectConnectGatewayAttachmentOutput = null as any; +utilities.lazyLoad(exports, ["getDirectConnectGatewayAttachment","getDirectConnectGatewayAttachmentOutput"], () => require("./getDirectConnectGatewayAttachment")); + export { GetGlobalNetworkArgs, GetGlobalNetworkResult, GetGlobalNetworkOutputArgs } from "./getGlobalNetwork"; export const getGlobalNetwork: typeof import("./getGlobalNetwork").getGlobalNetwork = null as any; export const getGlobalNetworkOutput: typeof import("./getGlobalNetwork").getGlobalNetworkOutput = null as any; @@ -145,6 +155,8 @@ const _module = { return new CustomerGatewayAssociation(name, undefined, { urn }) case "aws-native:networkmanager:Device": return new Device(name, undefined, { urn }) + case "aws-native:networkmanager:DirectConnectGatewayAttachment": + return new DirectConnectGatewayAttachment(name, undefined, { urn }) case "aws-native:networkmanager:GlobalNetwork": return new GlobalNetwork(name, undefined, { urn }) case "aws-native:networkmanager:Link": diff --git a/sdk/nodejs/package.json b/sdk/nodejs/package.json index b9b1faaa3e..086ba2deb8 100644 --- a/sdk/nodejs/package.json +++ b/sdk/nodejs/package.json @@ -17,7 +17,7 @@ "build": "tsc" }, "dependencies": { - "@pulumi/pulumi": "3.143.0" + "@pulumi/pulumi": "^3.142.0" }, "devDependencies": { "@types/node": "^14", diff --git a/sdk/nodejs/qbusiness/application.ts b/sdk/nodejs/qbusiness/application.ts index 38420d29d0..00f5b65603 100644 --- a/sdk/nodejs/qbusiness/application.ts +++ b/sdk/nodejs/qbusiness/application.ts @@ -99,6 +99,9 @@ export class Application extends pulumi.CustomResource { * Configuration information about Amazon Q Apps. */ public readonly qAppsConfiguration!: pulumi.Output; + /** + * The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. + */ public readonly quickSightConfiguration!: pulumi.Output; /** * The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions) and use it as the application's role. @@ -230,6 +233,9 @@ export interface ApplicationArgs { * Configuration information about Amazon Q Apps. */ qAppsConfiguration?: pulumi.Input; + /** + * The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. + */ quickSightConfiguration?: pulumi.Input; /** * The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions) and use it as the application's role. diff --git a/sdk/nodejs/qbusiness/dataAccessor.ts b/sdk/nodejs/qbusiness/dataAccessor.ts index b1bac605e2..11c47a9d63 100644 --- a/sdk/nodejs/qbusiness/dataAccessor.ts +++ b/sdk/nodejs/qbusiness/dataAccessor.ts @@ -37,15 +37,45 @@ export class DataAccessor extends pulumi.CustomResource { return obj['__pulumiType'] === DataAccessor.__pulumiType; } + /** + * A list of action configurations specifying the allowed actions and any associated filters. + */ public readonly actionConfigurations!: pulumi.Output; + /** + * The unique identifier of the Amazon Q Business application. + */ public readonly applicationId!: pulumi.Output; + /** + * The timestamp when the data accessor was created. + */ public /*out*/ readonly createdAt!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) of the data accessor. + */ public /*out*/ readonly dataAccessorArn!: pulumi.Output; + /** + * The unique identifier of the data accessor. + */ public /*out*/ readonly dataAccessorId!: pulumi.Output; + /** + * The friendly name of the data accessor. + */ public readonly displayName!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + */ public /*out*/ readonly idcApplicationArn!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + */ public readonly principal!: pulumi.Output; + /** + * The tags to associate with the data accessor. + */ public readonly tags!: pulumi.Output; + /** + * The timestamp when the data accessor was last updated. + */ public /*out*/ readonly updatedAt!: pulumi.Output; /** @@ -101,9 +131,24 @@ export class DataAccessor extends pulumi.CustomResource { * The set of arguments for constructing a DataAccessor resource. */ export interface DataAccessorArgs { + /** + * A list of action configurations specifying the allowed actions and any associated filters. + */ actionConfigurations: pulumi.Input[]>; + /** + * The unique identifier of the Amazon Q Business application. + */ applicationId?: pulumi.Input; + /** + * The friendly name of the data accessor. + */ displayName: pulumi.Input; + /** + * The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + */ principal: pulumi.Input; + /** + * The tags to associate with the data accessor. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/qbusiness/dataSource.ts b/sdk/nodejs/qbusiness/dataSource.ts index 5c87a2b3aa..0ff37ce390 100644 --- a/sdk/nodejs/qbusiness/dataSource.ts +++ b/sdk/nodejs/qbusiness/dataSource.ts @@ -87,6 +87,9 @@ export class DataSource extends pulumi.CustomResource { * The identifier of the index the data source is attached to. */ public readonly indexId!: pulumi.Output; + /** + * The configuration for extracting information from media in documents. + */ public readonly mediaExtractionConfiguration!: pulumi.Output; /** * The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. @@ -227,6 +230,9 @@ export interface DataSourceArgs { * The identifier of the index the data source is attached to. */ indexId: pulumi.Input; + /** + * The configuration for extracting information from media in documents. + */ mediaExtractionConfiguration?: pulumi.Input; /** * The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. diff --git a/sdk/nodejs/qbusiness/getDataAccessor.ts b/sdk/nodejs/qbusiness/getDataAccessor.ts index c7128dcd55..3e3aedf58f 100644 --- a/sdk/nodejs/qbusiness/getDataAccessor.ts +++ b/sdk/nodejs/qbusiness/getDataAccessor.ts @@ -19,18 +19,48 @@ export function getDataAccessor(args: GetDataAccessorArgs, opts?: pulumi.InvokeO } export interface GetDataAccessorArgs { + /** + * The unique identifier of the Amazon Q Business application. + */ applicationId: string; + /** + * The unique identifier of the data accessor. + */ dataAccessorId: string; } export interface GetDataAccessorResult { + /** + * A list of action configurations specifying the allowed actions and any associated filters. + */ readonly actionConfigurations?: outputs.qbusiness.DataAccessorActionConfiguration[]; + /** + * The timestamp when the data accessor was created. + */ readonly createdAt?: string; + /** + * The Amazon Resource Name (ARN) of the data accessor. + */ readonly dataAccessorArn?: string; + /** + * The unique identifier of the data accessor. + */ readonly dataAccessorId?: string; + /** + * The friendly name of the data accessor. + */ readonly displayName?: string; + /** + * The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + */ readonly idcApplicationArn?: string; + /** + * The tags to associate with the data accessor. + */ readonly tags?: outputs.Tag[]; + /** + * The timestamp when the data accessor was last updated. + */ readonly updatedAt?: string; } /** @@ -45,6 +75,12 @@ export function getDataAccessorOutput(args: GetDataAccessorOutputArgs, opts?: pu } export interface GetDataAccessorOutputArgs { + /** + * The unique identifier of the Amazon Q Business application. + */ applicationId: pulumi.Input; + /** + * The unique identifier of the data accessor. + */ dataAccessorId: pulumi.Input; } diff --git a/sdk/nodejs/qbusiness/getDataSource.ts b/sdk/nodejs/qbusiness/getDataSource.ts index f423075878..576813874e 100644 --- a/sdk/nodejs/qbusiness/getDataSource.ts +++ b/sdk/nodejs/qbusiness/getDataSource.ts @@ -77,6 +77,9 @@ export interface GetDataSourceResult { * For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . */ readonly documentEnrichmentConfiguration?: outputs.qbusiness.DataSourceDocumentEnrichmentConfiguration; + /** + * The configuration for extracting information from media in documents. + */ readonly mediaExtractionConfiguration?: outputs.qbusiness.DataSourceMediaExtractionConfiguration; /** * The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. diff --git a/sdk/nodejs/qbusiness/getWebExperience.ts b/sdk/nodejs/qbusiness/getWebExperience.ts index 4d912ba612..d59ce1a8a2 100644 --- a/sdk/nodejs/qbusiness/getWebExperience.ts +++ b/sdk/nodejs/qbusiness/getWebExperience.ts @@ -34,6 +34,9 @@ export interface GetWebExperienceResult { * The Unix timestamp when the Amazon Q Business application was last updated. */ readonly createdAt?: string; + /** + * Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + */ readonly customizationConfiguration?: outputs.qbusiness.WebExperienceCustomizationConfiguration; /** * The endpoint URLs for your Amazon Q Business web experience. The URLs are unique and fully hosted by AWS . diff --git a/sdk/nodejs/qbusiness/permission.ts b/sdk/nodejs/qbusiness/permission.ts index ab09d1c1d1..800400a9e4 100644 --- a/sdk/nodejs/qbusiness/permission.ts +++ b/sdk/nodejs/qbusiness/permission.ts @@ -34,9 +34,21 @@ export class Permission extends pulumi.CustomResource { return obj['__pulumiType'] === Permission.__pulumiType; } + /** + * The list of Amazon Q Business actions that the ISV is allowed to perform. + */ public readonly actions!: pulumi.Output; + /** + * The unique identifier of the Amazon Q Business application. + */ public readonly applicationId!: pulumi.Output; + /** + * Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + */ public readonly principal!: pulumi.Output; + /** + * A unique identifier for the policy statement. + */ public readonly statementId!: pulumi.Output; /** @@ -83,8 +95,20 @@ export class Permission extends pulumi.CustomResource { * The set of arguments for constructing a Permission resource. */ export interface PermissionArgs { + /** + * The list of Amazon Q Business actions that the ISV is allowed to perform. + */ actions: pulumi.Input[]>; + /** + * The unique identifier of the Amazon Q Business application. + */ applicationId: pulumi.Input; + /** + * Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + */ principal: pulumi.Input; + /** + * A unique identifier for the policy statement. + */ statementId: pulumi.Input; } diff --git a/sdk/nodejs/qbusiness/webExperience.ts b/sdk/nodejs/qbusiness/webExperience.ts index 29cbc85a67..0ed0d4b976 100644 --- a/sdk/nodejs/qbusiness/webExperience.ts +++ b/sdk/nodejs/qbusiness/webExperience.ts @@ -45,6 +45,9 @@ export class WebExperience extends pulumi.CustomResource { * The Unix timestamp when the Amazon Q Business application was last updated. */ public /*out*/ readonly createdAt!: pulumi.Output; + /** + * Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + */ public readonly customizationConfiguration!: pulumi.Output; /** * The endpoint URLs for your Amazon Q Business web experience. The URLs are unique and fully hosted by AWS . @@ -166,6 +169,9 @@ export interface WebExperienceArgs { * The identifier of the Amazon Q Business web experience. */ applicationId: pulumi.Input; + /** + * Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + */ customizationConfiguration?: pulumi.Input; /** * Provides information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience. diff --git a/sdk/nodejs/quicksight/dataSet.ts b/sdk/nodejs/quicksight/dataSet.ts index 4feb7dd471..d52fdbd05e 100644 --- a/sdk/nodejs/quicksight/dataSet.ts +++ b/sdk/nodejs/quicksight/dataSet.ts @@ -113,6 +113,7 @@ export class DataSet extends pulumi.CustomResource { * analyses, and dashboards.

*/ public /*out*/ readonly outputColumns!: pulumi.Output; + public readonly performanceConfiguration!: pulumi.Output; /** *

A list of resource permissions on the dataset.

*/ @@ -158,6 +159,7 @@ export class DataSet extends pulumi.CustomResource { resourceInputs["ingestionWaitPolicy"] = args ? args.ingestionWaitPolicy : undefined; resourceInputs["logicalTableMap"] = args ? args.logicalTableMap : undefined; resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["performanceConfiguration"] = args ? args.performanceConfiguration : undefined; resourceInputs["permissions"] = args ? args.permissions : undefined; resourceInputs["physicalTableMap"] = args ? args.physicalTableMap : undefined; resourceInputs["rowLevelPermissionDataSet"] = args ? args.rowLevelPermissionDataSet : undefined; @@ -187,6 +189,7 @@ export class DataSet extends pulumi.CustomResource { resourceInputs["logicalTableMap"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["outputColumns"] = undefined /*out*/; + resourceInputs["performanceConfiguration"] = undefined /*out*/; resourceInputs["permissions"] = undefined /*out*/; resourceInputs["physicalTableMap"] = undefined /*out*/; resourceInputs["rowLevelPermissionDataSet"] = undefined /*out*/; @@ -258,6 +261,7 @@ export interface DataSetArgs { *

The display name for the dataset.

*/ name?: pulumi.Input; + performanceConfiguration?: pulumi.Input; /** *

A list of resource permissions on the dataset.

*/ diff --git a/sdk/nodejs/quicksight/getDataSet.ts b/sdk/nodejs/quicksight/getDataSet.ts index 9bf1a51247..f8104c1866 100644 --- a/sdk/nodejs/quicksight/getDataSet.ts +++ b/sdk/nodejs/quicksight/getDataSet.ts @@ -86,6 +86,7 @@ export interface GetDataSetResult { * analyses, and dashboards.

*/ readonly outputColumns?: outputs.quicksight.DataSetOutputColumn[]; + readonly performanceConfiguration?: outputs.quicksight.DataSetPerformanceConfiguration; /** *

A list of resource permissions on the dataset.

*/ diff --git a/sdk/nodejs/s3/bucket.ts b/sdk/nodejs/s3/bucket.ts index 3d8509e700..32ff025c3a 100644 --- a/sdk/nodejs/s3/bucket.ts +++ b/sdk/nodejs/s3/bucket.ts @@ -609,7 +609,6 @@ export class Bucket extends pulumi.CustomResource { * Settings that define where logs are stored. */ public readonly loggingConfiguration!: pulumi.Output; - public readonly metadataTableConfiguration!: pulumi.Output; /** * Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). */ @@ -692,7 +691,6 @@ export class Bucket extends pulumi.CustomResource { resourceInputs["inventoryConfigurations"] = args ? args.inventoryConfigurations : undefined; resourceInputs["lifecycleConfiguration"] = args ? args.lifecycleConfiguration : undefined; resourceInputs["loggingConfiguration"] = args ? args.loggingConfiguration : undefined; - resourceInputs["metadataTableConfiguration"] = args ? args.metadataTableConfiguration : undefined; resourceInputs["metricsConfigurations"] = args ? args.metricsConfigurations : undefined; resourceInputs["notificationConfiguration"] = args ? args.notificationConfiguration : undefined; resourceInputs["objectLockConfiguration"] = args ? args.objectLockConfiguration : undefined; @@ -722,7 +720,6 @@ export class Bucket extends pulumi.CustomResource { resourceInputs["inventoryConfigurations"] = undefined /*out*/; resourceInputs["lifecycleConfiguration"] = undefined /*out*/; resourceInputs["loggingConfiguration"] = undefined /*out*/; - resourceInputs["metadataTableConfiguration"] = undefined /*out*/; resourceInputs["metricsConfigurations"] = undefined /*out*/; resourceInputs["notificationConfiguration"] = undefined /*out*/; resourceInputs["objectLockConfiguration"] = undefined /*out*/; @@ -791,7 +788,6 @@ export interface BucketArgs { * Settings that define where logs are stored. */ loggingConfiguration?: pulumi.Input; - metadataTableConfiguration?: pulumi.Input; /** * Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). */ diff --git a/sdk/nodejs/s3/getBucket.ts b/sdk/nodejs/s3/getBucket.ts index 9272f4d1a5..f3ec4c0c05 100644 --- a/sdk/nodejs/s3/getBucket.ts +++ b/sdk/nodejs/s3/getBucket.ts @@ -80,7 +80,6 @@ export interface GetBucketResult { * Settings that define where logs are stored. */ readonly loggingConfiguration?: outputs.s3.BucketLoggingConfiguration; - readonly metadataTableConfiguration?: outputs.s3.BucketMetadataTableConfiguration; /** * Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html). */ diff --git a/sdk/nodejs/s3tables/getTableBucket.ts b/sdk/nodejs/s3tables/getTableBucket.ts index 819755a067..4c41eb9b3d 100644 --- a/sdk/nodejs/s3tables/getTableBucket.ts +++ b/sdk/nodejs/s3tables/getTableBucket.ts @@ -18,11 +18,20 @@ export function getTableBucket(args: GetTableBucketArgs, opts?: pulumi.InvokeOpt } export interface GetTableBucketArgs { + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ tableBucketArn: string; } export interface GetTableBucketResult { + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ readonly tableBucketArn?: string; + /** + * The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + */ readonly unreferencedFileRemoval?: outputs.s3tables.TableBucketUnreferencedFileRemoval; } /** @@ -36,5 +45,8 @@ export function getTableBucketOutput(args: GetTableBucketOutputArgs, opts?: pulu } export interface GetTableBucketOutputArgs { + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ tableBucketArn: pulumi.Input; } diff --git a/sdk/nodejs/s3tables/getTableBucketPolicy.ts b/sdk/nodejs/s3tables/getTableBucketPolicy.ts index af89830cd9..c57b5787b5 100644 --- a/sdk/nodejs/s3tables/getTableBucketPolicy.ts +++ b/sdk/nodejs/s3tables/getTableBucketPolicy.ts @@ -18,10 +18,16 @@ export function getTableBucketPolicy(args: GetTableBucketPolicyArgs, opts?: pulu } export interface GetTableBucketPolicyArgs { + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ tableBucketArn: string; } export interface GetTableBucketPolicyResult { + /** + * The bucket policy JSON for the table bucket. + */ readonly resourcePolicy?: outputs.s3tables.TableBucketPolicyResourcePolicy; } /** @@ -35,5 +41,8 @@ export function getTableBucketPolicyOutput(args: GetTableBucketPolicyOutputArgs, } export interface GetTableBucketPolicyOutputArgs { + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ tableBucketArn: pulumi.Input; } diff --git a/sdk/nodejs/s3tables/tableBucket.ts b/sdk/nodejs/s3tables/tableBucket.ts index 4394b2c734..0aabaf4821 100644 --- a/sdk/nodejs/s3tables/tableBucket.ts +++ b/sdk/nodejs/s3tables/tableBucket.ts @@ -37,8 +37,17 @@ export class TableBucket extends pulumi.CustomResource { return obj['__pulumiType'] === TableBucket.__pulumiType; } + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ public /*out*/ readonly tableBucketArn!: pulumi.Output; + /** + * The name for the table bucket. + */ public readonly tableBucketName!: pulumi.Output; + /** + * The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + */ public readonly unreferencedFileRemoval!: pulumi.Output; /** @@ -71,6 +80,12 @@ export class TableBucket extends pulumi.CustomResource { * The set of arguments for constructing a TableBucket resource. */ export interface TableBucketArgs { + /** + * The name for the table bucket. + */ tableBucketName?: pulumi.Input; + /** + * The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + */ unreferencedFileRemoval?: pulumi.Input; } diff --git a/sdk/nodejs/s3tables/tableBucketPolicy.ts b/sdk/nodejs/s3tables/tableBucketPolicy.ts index ef0c00be2f..92df551bc8 100644 --- a/sdk/nodejs/s3tables/tableBucketPolicy.ts +++ b/sdk/nodejs/s3tables/tableBucketPolicy.ts @@ -37,7 +37,13 @@ export class TableBucketPolicy extends pulumi.CustomResource { return obj['__pulumiType'] === TableBucketPolicy.__pulumiType; } + /** + * The bucket policy JSON for the table bucket. + */ public readonly resourcePolicy!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ public readonly tableBucketArn!: pulumi.Output; /** @@ -74,6 +80,12 @@ export class TableBucketPolicy extends pulumi.CustomResource { * The set of arguments for constructing a TableBucketPolicy resource. */ export interface TableBucketPolicyArgs { + /** + * The bucket policy JSON for the table bucket. + */ resourcePolicy: pulumi.Input; + /** + * The Amazon Resource Name (ARN) of the table bucket. + */ tableBucketArn: pulumi.Input; } diff --git a/sdk/nodejs/transfer/getServer.ts b/sdk/nodejs/transfer/getServer.ts index 09e1d6b786..800c781953 100644 --- a/sdk/nodejs/transfer/getServer.ts +++ b/sdk/nodejs/transfer/getServer.ts @@ -139,6 +139,7 @@ export interface GetServerResult { * An example `ServerId` is `s-01234567890abcdef` . */ readonly serverId?: string; + readonly state?: enums.transfer.ServerState; /** * Specifies the log groups to which your server logs are sent. * diff --git a/sdk/nodejs/transfer/server.ts b/sdk/nodejs/transfer/server.ts index 72ef348995..dae9f9ed36 100644 --- a/sdk/nodejs/transfer/server.ts +++ b/sdk/nodejs/transfer/server.ts @@ -355,6 +355,7 @@ export class Server extends pulumi.CustomResource { * An example `ServerId` is `s-01234567890abcdef` . */ public /*out*/ readonly serverId!: pulumi.Output; + public /*out*/ readonly state!: pulumi.Output; /** * Specifies the log groups to which your server logs are sent. * @@ -410,6 +411,7 @@ export class Server extends pulumi.CustomResource { resourceInputs["arn"] = undefined /*out*/; resourceInputs["as2ServiceManagedEgressIpAddresses"] = undefined /*out*/; resourceInputs["serverId"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; } else { resourceInputs["arn"] = undefined /*out*/; resourceInputs["as2ServiceManagedEgressIpAddresses"] = undefined /*out*/; @@ -427,6 +429,7 @@ export class Server extends pulumi.CustomResource { resourceInputs["s3StorageOptions"] = undefined /*out*/; resourceInputs["securityPolicyName"] = undefined /*out*/; resourceInputs["serverId"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; resourceInputs["structuredLogDestinations"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["workflowDetails"] = undefined /*out*/; diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 28eb535378..577b299354 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -300,9 +300,11 @@ "budgets/index.ts", "cassandra/getKeyspace.ts", "cassandra/getTable.ts", + "cassandra/getType.ts", "cassandra/index.ts", "cassandra/keyspace.ts", "cassandra/table.ts", + "cassandra/type.ts", "ce/anomalyMonitor.ts", "ce/anomalySubscription.ts", "ce/costCategory.ts", @@ -1508,6 +1510,7 @@ "logs/getQueryDefinition.ts", "logs/getResourcePolicy.ts", "logs/getSubscriptionFilter.ts", + "logs/getTransformer.ts", "logs/index.ts", "logs/integration.ts", "logs/logAnomalyDetector.ts", @@ -1517,6 +1520,7 @@ "logs/queryDefinition.ts", "logs/resourcePolicy.ts", "logs/subscriptionFilter.ts", + "logs/transformer.ts", "lookoutmetrics/alert.ts", "lookoutmetrics/anomalyDetector.ts", "lookoutmetrics/getAlert.ts", @@ -1672,10 +1676,12 @@ "networkmanager/coreNetwork.ts", "networkmanager/customerGatewayAssociation.ts", "networkmanager/device.ts", + "networkmanager/directConnectGatewayAttachment.ts", "networkmanager/getConnectAttachment.ts", "networkmanager/getConnectPeer.ts", "networkmanager/getCoreNetwork.ts", "networkmanager/getDevice.ts", + "networkmanager/getDirectConnectGatewayAttachment.ts", "networkmanager/getGlobalNetwork.ts", "networkmanager/getLink.ts", "networkmanager/getSite.ts", diff --git a/sdk/nodejs/types/enums/appconfig/index.ts b/sdk/nodejs/types/enums/appconfig/index.ts index 9bf9f8a2c2..5f4014d07d 100644 --- a/sdk/nodejs/types/enums/appconfig/index.ts +++ b/sdk/nodejs/types/enums/appconfig/index.ts @@ -2,6 +2,17 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** +export const ConfigurationProfileDeletionProtectionCheck = { + AccountDefault: "ACCOUNT_DEFAULT", + Apply: "APPLY", + Bypass: "BYPASS", +} as const; + +/** + * On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + */ +export type ConfigurationProfileDeletionProtectionCheck = (typeof ConfigurationProfileDeletionProtectionCheck)[keyof typeof ConfigurationProfileDeletionProtectionCheck]; + export const DeploymentStrategyGrowthType = { Exponential: "EXPONENTIAL", Linear: "LINEAR", @@ -33,3 +44,14 @@ export const DeploymentStrategyReplicateTo = { * Save the deployment strategy to a Systems Manager (SSM) document. */ export type DeploymentStrategyReplicateTo = (typeof DeploymentStrategyReplicateTo)[keyof typeof DeploymentStrategyReplicateTo]; + +export const EnvironmentDeletionProtectionCheck = { + AccountDefault: "ACCOUNT_DEFAULT", + Apply: "APPLY", + Bypass: "BYPASS", +} as const; + +/** + * On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + */ +export type EnvironmentDeletionProtectionCheck = (typeof EnvironmentDeletionProtectionCheck)[keyof typeof EnvironmentDeletionProtectionCheck]; diff --git a/sdk/nodejs/types/enums/autoscaling/index.ts b/sdk/nodejs/types/enums/autoscaling/index.ts index 1c82adbc93..913bfdfe67 100644 --- a/sdk/nodejs/types/enums/autoscaling/index.ts +++ b/sdk/nodejs/types/enums/autoscaling/index.ts @@ -8,10 +8,9 @@ export const AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStr } as const; /** - * If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - * - * - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - * - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + * If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + * + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + * + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. */ export type AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy = (typeof AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy)[keyof typeof AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy]; @@ -21,6 +20,6 @@ export const AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthC } as const; /** - * Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + * Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. */ export type AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior = (typeof AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior)[keyof typeof AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior]; diff --git a/sdk/nodejs/types/enums/cloudfront/index.ts b/sdk/nodejs/types/enums/cloudfront/index.ts index 12882e08ca..2bc1665dec 100644 --- a/sdk/nodejs/types/enums/cloudfront/index.ts +++ b/sdk/nodejs/types/enums/cloudfront/index.ts @@ -22,6 +22,13 @@ export const ContinuousDeploymentPolicyTrafficConfigType = { */ export type ContinuousDeploymentPolicyTrafficConfigType = (typeof ContinuousDeploymentPolicyTrafficConfigType)[keyof typeof ContinuousDeploymentPolicyTrafficConfigType]; +export const DistributionOriginGroupSelectionCriteria = { + Default: "default", + MediaQualityBased: "media-quality-based", +} as const; + +export type DistributionOriginGroupSelectionCriteria = (typeof DistributionOriginGroupSelectionCriteria)[keyof typeof DistributionOriginGroupSelectionCriteria]; + export const MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatus = { Enabled: "Enabled", Disabled: "Disabled", diff --git a/sdk/nodejs/types/enums/connect/index.ts b/sdk/nodejs/types/enums/connect/index.ts index 39c29d1afd..3f2e2a49c6 100644 --- a/sdk/nodejs/types/enums/connect/index.ts +++ b/sdk/nodejs/types/enums/connect/index.ts @@ -301,7 +301,8 @@ export const RulePublishStatus = { } as const; /** - * The publish status of a rule, either draft or published. + * The publish status of the rule. + * *Allowed values*: ``DRAFT`` | ``PUBLISHED`` */ export type RulePublishStatus = (typeof RulePublishStatus)[keyof typeof RulePublishStatus]; @@ -314,6 +315,10 @@ export const RuleReferenceType = { Email: "EMAIL", } as const; +/** + * The type of the reference. ``DATE`` must be of type Epoch timestamp. + * *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + */ export type RuleReferenceType = (typeof RuleReferenceType)[keyof typeof RuleReferenceType]; export const RuleSendNotificationActionContentType = { @@ -321,7 +326,8 @@ export const RuleSendNotificationActionContentType = { } as const; /** - * The type of content. + * Content type format. + * *Allowed value*: ``PLAIN_TEXT`` */ export type RuleSendNotificationActionContentType = (typeof RuleSendNotificationActionContentType)[keyof typeof RuleSendNotificationActionContentType]; @@ -330,7 +336,8 @@ export const RuleSendNotificationActionDeliveryMethod = { } as const; /** - * The means of delivery. + * Notification delivery method. + * *Allowed value*: ``EMAIL`` */ export type RuleSendNotificationActionDeliveryMethod = (typeof RuleSendNotificationActionDeliveryMethod)[keyof typeof RuleSendNotificationActionDeliveryMethod]; @@ -349,7 +356,7 @@ export const RuleTriggerEventSourceEventSourceName = { } as const; /** - * The name of event source. + * The name of the event source. */ export type RuleTriggerEventSourceEventSourceName = (typeof RuleTriggerEventSourceEventSourceName)[keyof typeof RuleTriggerEventSourceEventSourceName]; diff --git a/sdk/nodejs/types/enums/ec2/index.ts b/sdk/nodejs/types/enums/ec2/index.ts index e14cddf059..820adb3307 100644 --- a/sdk/nodejs/types/enums/ec2/index.ts +++ b/sdk/nodejs/types/enums/ec2/index.ts @@ -833,10 +833,39 @@ export const VpcBlockPublicAccessOptionsInternetGatewayBlockMode = { */ export type VpcBlockPublicAccessOptionsInternetGatewayBlockMode = (typeof VpcBlockPublicAccessOptionsInternetGatewayBlockMode)[keyof typeof VpcBlockPublicAccessOptionsInternetGatewayBlockMode]; +export const VpcEndpointDnsOptionsSpecificationDnsRecordIpType = { + Ipv4: "ipv4", + Ipv6: "ipv6", + Dualstack: "dualstack", + ServiceDefined: "service-defined", + NotSpecified: "not-specified", +} as const; + +export type VpcEndpointDnsOptionsSpecificationDnsRecordIpType = (typeof VpcEndpointDnsOptionsSpecificationDnsRecordIpType)[keyof typeof VpcEndpointDnsOptionsSpecificationDnsRecordIpType]; + +export const VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint = { + OnlyInboundResolver: "OnlyInboundResolver", + AllResolvers: "AllResolvers", + NotSpecified: "NotSpecified", +} as const; + +export type VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint = (typeof VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint)[keyof typeof VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint]; + +export const VpcEndpointIpAddressType = { + Ipv4: "ipv4", + Ipv6: "ipv6", + Dualstack: "dualstack", + NotSpecified: "not-specified", +} as const; + +export type VpcEndpointIpAddressType = (typeof VpcEndpointIpAddressType)[keyof typeof VpcEndpointIpAddressType]; + export const VpcEndpointType = { Interface: "Interface", Gateway: "Gateway", GatewayLoadBalancer: "GatewayLoadBalancer", + ServiceNetwork: "ServiceNetwork", + Resource: "Resource", } as const; /** diff --git a/sdk/nodejs/types/enums/ecs/index.ts b/sdk/nodejs/types/enums/ecs/index.ts index a2009279bd..109a006a98 100644 --- a/sdk/nodejs/types/enums/ecs/index.ts +++ b/sdk/nodejs/types/enums/ecs/index.ts @@ -65,8 +65,7 @@ export const ServiceAvailabilityZoneRebalancing = { /** * Indicates whether to use Availability Zone rebalancing for the service. - * - * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + * For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. */ export type ServiceAvailabilityZoneRebalancing = (typeof ServiceAvailabilityZoneRebalancing)[keyof typeof ServiceAvailabilityZoneRebalancing]; @@ -76,7 +75,7 @@ export const ServiceAwsVpcConfigurationAssignPublicIp = { } as const; /** - * Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + * Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. */ export type ServiceAwsVpcConfigurationAssignPublicIp = (typeof ServiceAwsVpcConfigurationAssignPublicIp)[keyof typeof ServiceAwsVpcConfigurationAssignPublicIp]; diff --git a/sdk/nodejs/types/enums/logs/index.ts b/sdk/nodejs/types/enums/logs/index.ts index c507313948..842d3324a6 100644 --- a/sdk/nodejs/types/enums/logs/index.ts +++ b/sdk/nodejs/types/enums/logs/index.ts @@ -103,6 +103,17 @@ export const MetricFilterMetricTransformationUnit = { */ export type MetricFilterMetricTransformationUnit = (typeof MetricFilterMetricTransformationUnit)[keyof typeof MetricFilterMetricTransformationUnit]; +export const QueryDefinitionQueryLanguage = { + Cwli: "CWLI", + Sql: "SQL", + Ppl: "PPL", +} as const; + +/** + * Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + */ +export type QueryDefinitionQueryLanguage = (typeof QueryDefinitionQueryLanguage)[keyof typeof QueryDefinitionQueryLanguage]; + export const SubscriptionFilterDistribution = { Random: "Random", ByLogStream: "ByLogStream", @@ -112,3 +123,19 @@ export const SubscriptionFilterDistribution = { * The method used to distribute log data to the destination, which can be either random or grouped by log stream. */ export type SubscriptionFilterDistribution = (typeof SubscriptionFilterDistribution)[keyof typeof SubscriptionFilterDistribution]; + +export const TransformerProcessorListToMapPropertiesFlattenedElement = { + First: "first", + Last: "last", +} as const; + +export type TransformerProcessorListToMapPropertiesFlattenedElement = (typeof TransformerProcessorListToMapPropertiesFlattenedElement)[keyof typeof TransformerProcessorListToMapPropertiesFlattenedElement]; + +export const TransformerTypeConverterEntryType = { + Boolean: "boolean", + Integer: "integer", + Double: "double", + String: "string", +} as const; + +export type TransformerTypeConverterEntryType = (typeof TransformerTypeConverterEntryType)[keyof typeof TransformerTypeConverterEntryType]; diff --git a/sdk/nodejs/types/enums/m2/index.ts b/sdk/nodejs/types/enums/m2/index.ts index aa1a8a117c..1dd42c046f 100644 --- a/sdk/nodejs/types/enums/m2/index.ts +++ b/sdk/nodejs/types/enums/m2/index.ts @@ -18,3 +18,10 @@ export const EnvironmentEngineType = { * The target platform for the environment. */ export type EnvironmentEngineType = (typeof EnvironmentEngineType)[keyof typeof EnvironmentEngineType]; + +export const EnvironmentNetworkType = { + Ipv4: "ipv4", + Dual: "dual", +} as const; + +export type EnvironmentNetworkType = (typeof EnvironmentNetworkType)[keyof typeof EnvironmentNetworkType]; diff --git a/sdk/nodejs/types/enums/transfer/index.ts b/sdk/nodejs/types/enums/transfer/index.ts index 5cfcfe5bf4..5d7268491e 100644 --- a/sdk/nodejs/types/enums/transfer/index.ts +++ b/sdk/nodejs/types/enums/transfer/index.ts @@ -179,6 +179,17 @@ export const ServerSftpAuthenticationMethods = { export type ServerSftpAuthenticationMethods = (typeof ServerSftpAuthenticationMethods)[keyof typeof ServerSftpAuthenticationMethods]; +export const ServerState = { + Offline: "OFFLINE", + Online: "ONLINE", + Starting: "STARTING", + Stopping: "STOPPING", + StartFailed: "START_FAILED", + StopFailed: "STOP_FAILED", +} as const; + +export type ServerState = (typeof ServerState)[keyof typeof ServerState]; + export const ServerTlsSessionResumptionMode = { Disabled: "DISABLED", Enabled: "ENABLED", diff --git a/sdk/nodejs/types/enums/vpclattice/index.ts b/sdk/nodejs/types/enums/vpclattice/index.ts index 7173f2731c..0a8f3ed783 100644 --- a/sdk/nodejs/types/enums/vpclattice/index.ts +++ b/sdk/nodejs/types/enums/vpclattice/index.ts @@ -38,6 +38,9 @@ export const ResourceConfigurationAuthType = { AwsIam: "AWS_IAM", } as const; +/** + * The auth type for the resource configuration. + */ export type ResourceConfigurationAuthType = (typeof ResourceConfigurationAuthType)[keyof typeof ResourceConfigurationAuthType]; export const ResourceConfigurationDnsResourceIpAddressType = { @@ -52,6 +55,9 @@ export const ResourceConfigurationProtocolType = { Tcp: "TCP", } as const; +/** + * (SINGLE, GROUP) The protocol accepted by the resource configuration. + */ export type ResourceConfigurationProtocolType = (typeof ResourceConfigurationProtocolType)[keyof typeof ResourceConfigurationProtocolType]; export const ResourceConfigurationType = { @@ -61,6 +67,14 @@ export const ResourceConfigurationType = { Arn: "ARN", } as const; +/** + * The type of resource configuration. A resource configuration can be one of the following types: + * + * - *SINGLE* - A single resource. + * - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + * - *CHILD* - A single resource that is part of a group resource configuration. + * - *ARN* - An AWS resource. + */ export type ResourceConfigurationType = (typeof ResourceConfigurationType)[keyof typeof ResourceConfigurationType]; export const ResourceGatewayIpAddressType = { @@ -69,6 +83,9 @@ export const ResourceGatewayIpAddressType = { Dualstack: "DUALSTACK", } as const; +/** + * The type of IP address used by the resource gateway. + */ export type ResourceGatewayIpAddressType = (typeof ResourceGatewayIpAddressType)[keyof typeof ResourceGatewayIpAddressType]; export const RuleHttpMatchMethod = { diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 5e3295ec5d..3935fbdb76 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -6690,23 +6690,28 @@ export namespace autoscaling { min?: pulumi.Input; } + /** + * ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + */ export interface AutoScalingGroupAvailabilityZoneDistributionArgs { /** - * If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - * - * - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - * - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + * If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + * + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + * + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. */ capacityDistributionStrategy?: pulumi.Input; } + /** + * Describes an Availability Zone impairment policy. + */ export interface AutoScalingGroupAvailabilityZoneImpairmentPolicyArgs { /** - * Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + * Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. */ impairedZoneHealthCheckBehavior: pulumi.Input; /** - * If `true` , enable zonal shift for your Auto Scaling group. + * If ``true``, enable zonal shift for your Auto Scaling group. */ zonalShiftEnabled: pulumi.Input; } @@ -8594,17 +8599,6 @@ export namespace batch { terminateJobsOnUpdate?: pulumi.Input; } - export interface JobDefinitionAuthorizationConfigArgs { - /** - * The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - */ - accessPointId?: pulumi.Input; - /** - * Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - */ - iam?: pulumi.Input; - } - export interface JobDefinitionContainerPropertiesArgs { /** * The command that's passed to the container. This parameter maps to `Cmd` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `COMMAND` parameter to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . For more information, see [https://docs.docker.com/engine/reference/builder/#cmd](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/builder/#cmd) . @@ -8627,7 +8621,7 @@ export namespace batch { /** * The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. */ - fargatePlatformConfiguration?: pulumi.Input; + fargatePlatformConfiguration?: pulumi.Input; /** * Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . * @@ -8640,12 +8634,6 @@ export namespace batch { * - Images in other online repositories are qualified further by a domain name (for example, `quay.io/assemblyline/ubuntu` ). */ image: pulumi.Input; - /** - * The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - * - * > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - */ - instanceType?: pulumi.Input; /** * The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . */ @@ -8673,7 +8661,7 @@ export namespace batch { /** * The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . */ - mountPoints?: pulumi.Input[]>; + mountPoints?: pulumi.Input[]>; /** * The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. */ @@ -8723,7 +8711,14 @@ export namespace batch { /** * A list of data volumes used in a job. */ - volumes?: pulumi.Input[]>; + volumes?: pulumi.Input[]>; + } + + /** + * The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. + */ + export interface JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs { + platformVersion?: pulumi.Input; } export interface JobDefinitionDeviceArgs { @@ -8806,14 +8801,25 @@ export namespace batch { /** * A list of volumes that are associated with the job. */ - volumes?: pulumi.Input[]>; + volumes?: pulumi.Input[]>; + } + + export interface JobDefinitionEfsAuthorizationConfigArgs { + /** + * The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + */ + accessPointId?: pulumi.Input; + /** + * Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + */ + iam?: pulumi.Input; } export interface JobDefinitionEfsVolumeConfigurationArgs { /** * The authorization configuration details for the Amazon EFS file system. */ - authorizationConfig?: pulumi.Input; + authorizationConfig?: pulumi.Input; /** * The Amazon EFS file system ID to use. */ @@ -8900,7 +8906,7 @@ export namespace batch { * - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . * - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . */ - limits?: any; + limits?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. * @@ -8910,7 +8916,7 @@ export namespace batch { * - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . * - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . */ - requests?: any; + requests?: pulumi.Input<{[key: string]: pulumi.Input}>; } export interface JobDefinitionEksContainerSecurityContextArgs { @@ -8976,11 +8982,65 @@ export namespace batch { path?: pulumi.Input; } + export interface JobDefinitionEksMetadataArgs { + /** + * Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. + */ + labels?: pulumi.Input<{[key: string]: pulumi.Input}>; + } + + export interface JobDefinitionEksPodPropertiesArgs { + /** + * The properties of the container that's used on the Amazon EKS pod. + * + * > This object is limited to 10 elements. + */ + containers?: pulumi.Input[]>; + /** + * The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + * + * Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` + */ + dnsPolicy?: pulumi.Input; + /** + * Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + */ + hostNetwork?: pulumi.Input; + /** + * References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + * + * `ImagePullSecret$name` is required when this object is used. + */ + imagePullSecrets?: pulumi.Input[]>; + /** + * These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + * + * > This object is limited to 10 elements. + */ + initContainers?: pulumi.Input[]>; + /** + * Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + */ + metadata?: pulumi.Input; + /** + * The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + */ + serviceAccountName?: pulumi.Input; + /** + * Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + */ + shareProcessNamespace?: pulumi.Input; + /** + * Specifies the volumes for a job definition that uses Amazon EKS resources. + */ + volumes?: pulumi.Input[]>; + } + export interface JobDefinitionEksPropertiesArgs { /** * The properties for the Kubernetes pod resources of a job. */ - podProperties?: pulumi.Input; + podProperties?: pulumi.Input; } export interface JobDefinitionEksSecretArgs { @@ -9052,18 +9112,31 @@ export namespace batch { onStatusReason?: pulumi.Input; } - export interface JobDefinitionFargatePlatformConfigurationArgs { + export interface JobDefinitionHostArgs { /** - * The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . + * The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + * + * > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. */ - platformVersion?: pulumi.Input; + sourcePath?: pulumi.Input; } export interface JobDefinitionImagePullSecretArgs { /** * Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. */ - name: pulumi.Input; + name?: pulumi.Input; + } + + export interface JobDefinitionJobTimeoutArgs { + /** + * The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + * + * For array jobs, the timeout applies to the child jobs, not to the parent array job. + * + * For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + */ + attemptDurationSeconds?: pulumi.Input; } export interface JobDefinitionLinuxParametersArgs { @@ -9137,21 +9210,14 @@ export namespace batch { /** * The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` */ - options?: any; + options?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . */ secretOptions?: pulumi.Input[]>; } - export interface JobDefinitionMetadataArgs { - /** - * Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. - */ - labels?: any; - } - - export interface JobDefinitionMountPointsArgs { + export interface JobDefinitionMountPointArgs { /** * The path on the container where the host volume is mounted. */ @@ -9166,6 +9232,43 @@ export namespace batch { sourceVolume?: pulumi.Input; } + export interface JobDefinitionMultiNodeContainerPropertiesArgs { + command?: pulumi.Input[]>; + environment?: pulumi.Input[]>; + ephemeralStorage?: pulumi.Input; + executionRoleArn?: pulumi.Input; + image: pulumi.Input; + instanceType?: pulumi.Input; + jobRoleArn?: pulumi.Input; + linuxParameters?: pulumi.Input; + logConfiguration?: pulumi.Input; + memory?: pulumi.Input; + mountPoints?: pulumi.Input[]>; + privileged?: pulumi.Input; + readonlyRootFilesystem?: pulumi.Input; + repositoryCredentials?: pulumi.Input; + resourceRequirements?: pulumi.Input[]>; + runtimePlatform?: pulumi.Input; + secrets?: pulumi.Input[]>; + ulimits?: pulumi.Input[]>; + user?: pulumi.Input; + vcpus?: pulumi.Input; + volumes?: pulumi.Input[]>; + } + + export interface JobDefinitionMultiNodeEcsPropertiesArgs { + taskProperties: pulumi.Input[]>; + } + + export interface JobDefinitionMultiNodeEcsTaskPropertiesArgs { + containers?: pulumi.Input[]>; + executionRoleArn?: pulumi.Input; + ipcMode?: pulumi.Input; + pidMode?: pulumi.Input; + taskRoleArn?: pulumi.Input; + volumes?: pulumi.Input[]>; + } + export interface JobDefinitionNetworkConfigurationArgs { /** * Indicates whether the job has a public IP address. For a job that's running on Fargate resources in a private subnet to send outbound traffic to the internet (for example, to pull container images), the private subnet requires a NAT gateway be attached to route requests to the internet. For more information, see [Amazon ECS task networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide* . The default value is " `DISABLED` ". @@ -9192,11 +9295,11 @@ export namespace batch { /** * The container details for the node range. */ - container?: pulumi.Input; + container?: pulumi.Input; /** * This is an object that represents the properties of the node range for a multi-node parallel job. */ - ecsProperties?: pulumi.Input; + ecsProperties?: pulumi.Input; /** * This is an object that represents the properties of the node range for a multi-node parallel job. */ @@ -9215,48 +9318,6 @@ export namespace batch { targetNodes: pulumi.Input; } - export interface JobDefinitionPodPropertiesArgs { - /** - * The properties of the container that's used on the Amazon EKS pod. - * - * > This object is limited to 10 elements. - */ - containers?: pulumi.Input[]>; - /** - * The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - * - * Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - */ - dnsPolicy?: pulumi.Input; - /** - * Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - */ - hostNetwork?: pulumi.Input; - imagePullSecrets?: pulumi.Input[]>; - /** - * These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - * - * > This object is limited to 10 elements. - */ - initContainers?: pulumi.Input[]>; - /** - * Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - */ - metadata?: pulumi.Input; - /** - * The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - */ - serviceAccountName?: pulumi.Input; - /** - * Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - */ - shareProcessNamespace?: pulumi.Input; - /** - * Specifies the volumes for a job definition that uses Amazon EKS resources. - */ - volumes?: pulumi.Input[]>; - } - export interface JobDefinitionRepositoryCredentialsArgs { /** * The Amazon Resource Name (ARN) of the secret containing the private repository credentials. @@ -9416,7 +9477,7 @@ export namespace batch { * * Windows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives. */ - mountPoints?: pulumi.Input[]>; + mountPoints?: pulumi.Input[]>; /** * The name of a container. The name can be used as a unique identifier to target your `dependsOn` and `Overrides` objects. */ @@ -9474,17 +9535,6 @@ export namespace batch { user?: pulumi.Input; } - export interface JobDefinitionTimeoutArgs { - /** - * The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - * - * For array jobs, the timeout applies to the child jobs, not to the parent array job. - * - * For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - */ - attemptDurationSeconds?: pulumi.Input; - } - export interface JobDefinitionTmpfsArgs { /** * The absolute file path in the container where the `tmpfs` volume is mounted. @@ -9517,9 +9567,9 @@ export namespace batch { softLimit: pulumi.Input; } - export interface JobDefinitionVolumesArgs { + export interface JobDefinitionVolumeArgs { /** - * This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . + * This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . */ efsVolumeConfiguration?: pulumi.Input; /** @@ -9527,22 +9577,13 @@ export namespace batch { * * > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. */ - host?: pulumi.Input; + host?: pulumi.Input; /** * The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . */ name?: pulumi.Input; } - export interface JobDefinitionVolumesHostArgs { - /** - * The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - * - * > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - */ - sourcePath?: pulumi.Input; - } - export interface JobQueueComputeEnvironmentOrderArgs { /** * The Amazon Resource Name (ARN) of the compute environment. @@ -11831,6 +11872,11 @@ export namespace cassandra { */ targetValue: pulumi.Input; } + + export interface TypeFieldArgs { + fieldName: pulumi.Input; + fieldType: pulumi.Input; + } } export namespace ce { @@ -12126,6 +12172,13 @@ export namespace cleanrooms { custom: pulumi.Input; } + export interface ConfiguredTableAthenaTableReferenceArgs { + databaseName: pulumi.Input; + outputLocation?: pulumi.Input; + tableName: pulumi.Input; + workGroup: pulumi.Input; + } + export interface ConfiguredTableDifferentialPrivacyArgs { columns: pulumi.Input[]>; } @@ -12135,23 +12188,40 @@ export namespace cleanrooms { } export interface ConfiguredTableGlueTableReferenceArgs { - /** - * The name of the database the AWS Glue table belongs to. - */ databaseName: pulumi.Input; - /** - * The name of the AWS Glue table. - */ tableName: pulumi.Input; } - export interface ConfiguredTableTableReferenceArgs { - /** - * If present, a reference to the AWS Glue table referred to by this table reference. - */ + export interface ConfiguredTableSnowflakeTableReferenceArgs { + accountIdentifier: pulumi.Input; + databaseName: pulumi.Input; + schemaName: pulumi.Input; + secretArn: pulumi.Input; + tableName: pulumi.Input; + tableSchema: pulumi.Input; + } + + export interface ConfiguredTableSnowflakeTableSchemaPropertiesArgs { + v1: pulumi.Input[]>; + } + + export interface ConfiguredTableSnowflakeTableSchemaV1Args { + columnName: pulumi.Input; + columnType: pulumi.Input; + } + + export interface ConfiguredTableTableReference0PropertiesArgs { glue: pulumi.Input; } + export interface ConfiguredTableTableReference1PropertiesArgs { + snowflake: pulumi.Input; + } + + export interface ConfiguredTableTableReference2PropertiesArgs { + athena: pulumi.Input; + } + export interface IdMappingTableInputReferenceConfigArgs { /** * The Amazon Resource Name (ARN) of the referenced resource in AWS Entity Resolution . Valid values are ID mapping workflow ARNs. @@ -12484,15 +12554,15 @@ export namespace cloudformation { */ concurrencyMode?: pulumi.Input; /** - * The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + * The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. * * Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). */ failureToleranceCount?: pulumi.Input; /** - * The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + * The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. * - * When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + * When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. * * Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. */ @@ -12508,7 +12578,7 @@ export namespace cloudformation { /** * The maximum percentage of accounts in which to perform this operation at one time. * - * When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + * When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. * * Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. * @@ -12902,6 +12972,10 @@ export namespace cloudfront { * A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior. */ functionAssociations?: pulumi.Input[]>; + /** + * The gRPC configuration for your cache behavior. + */ + grpcConfig?: pulumi.Input; /** * A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. */ @@ -13234,6 +13308,10 @@ export namespace cloudfront { * A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior. */ functionAssociations?: pulumi.Input[]>; + /** + * The gRPC configuration for your cache behavior. + */ + grpcConfig?: pulumi.Input; /** * A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. */ @@ -13367,6 +13445,13 @@ export namespace cloudfront { restrictionType: pulumi.Input; } + export interface DistributionGrpcConfigArgs { + /** + * Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + */ + enabled: pulumi.Input; + } + /** * A complex type that contains a Lambda@Edge function association. */ @@ -13441,7 +13526,7 @@ export namespace cloudfront { /** * The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. */ - bucket: pulumi.Input; + bucket?: pulumi.Input; /** * Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. */ @@ -13548,6 +13633,10 @@ export namespace cloudfront { * A complex type that contains information about the origins in an origin group. */ members: pulumi.Input; + /** + * The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + */ + selectionCriteria?: pulumi.Input; } /** @@ -16896,8 +16985,17 @@ export namespace connect { * Overrides attached to the hours of operation. */ export interface HoursOfOperationOverrideArgs { + /** + * The date from which the hours of operation override would be effective. + */ effectiveFrom: pulumi.Input; + /** + * The date till which the hours of operation override would be effective. + */ effectiveTill: pulumi.Input; + /** + * The identifier for the hours of operation override. + */ hoursOfOperationOverrideId?: pulumi.Input; overrideConfig: pulumi.Input[]>; overrideDescription?: pulumi.Input; @@ -17041,6 +17139,16 @@ export namespace connect { outboundFlowArn?: pulumi.Input; } + /** + * The outbound email address ID. + */ + export interface QueueOutboundEmailConfigArgs { + /** + * The identifier of the email address. + */ + outboundEmailAddressId?: pulumi.Input; + } + /** * Configuration settings for the quick connect. */ @@ -17168,17 +17276,17 @@ export namespace connect { } /** - * The list of actions that will be executed when a rule is triggered. + * A list of actions to be run when the rule is triggered. */ export interface RuleActionsArgs { /** - * Information about the contact category action. The syntax can be empty, for example, `{}` . + * Information about the contact category action. The syntax can be empty, for example, ``{}``. */ assignContactCategoryActions?: pulumi.Input[]>; createCaseActions?: pulumi.Input[]>; endAssociatedTasksActions?: pulumi.Input[]>; /** - * Information about the EventBridge action. + * Information about the EV action. */ eventBridgeActions?: pulumi.Input[]>; /** @@ -17187,7 +17295,7 @@ export namespace connect { sendNotificationActions?: pulumi.Input[]>; submitAutoEvaluationActions?: pulumi.Input[]>; /** - * Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + * Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` */ taskActions?: pulumi.Input[]>; updateCaseActions?: pulumi.Input[]>; @@ -17199,14 +17307,8 @@ export namespace connect { export interface RuleAssignContactCategoryActionArgs { } - /** - * The definition for create case action. - */ export interface RuleCreateCaseActionArgs { fields: pulumi.Input[]>; - /** - * The Id of template. - */ templateId: pulumi.Input; } @@ -17217,28 +17319,22 @@ export namespace connect { } /** - * The definition for event bridge action. + * The EV action definition. */ export interface RuleEventBridgeActionArgs { /** - * The name of the event bridge action. + * The name. */ name: pulumi.Input; } - /** - * The field of the case. - */ export interface RuleFieldArgs { - /** - * The Id of the field - */ id: pulumi.Input; value: pulumi.Input; } /** - * The value of the field. + * Object for case field values. */ export interface RuleFieldValueArgs { booleanValue?: pulumi.Input; @@ -17252,95 +17348,98 @@ export namespace connect { */ export interface RuleNotificationRecipientTypeArgs { /** - * The list of recipients by user arns. + * The Amazon Resource Name (ARN) of the user account. */ userArns?: pulumi.Input[]>; /** - * The collection of recipients who are identified by user tags + * The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. */ userTags?: pulumi.Input<{[key: string]: pulumi.Input}>; } /** - * A contact reference. + * Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) */ export interface RuleReferenceArgs { + /** + * The type of the reference. ``DATE`` must be of type Epoch timestamp. + * *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + */ type: pulumi.Input; + /** + * A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + */ value: pulumi.Input; } /** - * The definition for sending notification action. + * Information about the send notification action. */ export interface RuleSendNotificationActionArgs { /** - * The content of notification. + * Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ content: pulumi.Input; /** - * The type of content. + * Content type format. + * *Allowed value*: ``PLAIN_TEXT`` */ contentType: pulumi.Input; /** - * The means of delivery. + * Notification delivery method. + * *Allowed value*: ``EMAIL`` */ deliveryMethod: pulumi.Input; + /** + * Notification recipient. + */ recipient: pulumi.Input; /** - * The subject of notification. + * The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ subject?: pulumi.Input; } - /** - * The definition of submit auto evaluation action. - */ export interface RuleSubmitAutoEvaluationActionArgs { - /** - * The Amazon Resource Name (ARN) of the evaluation form. - */ evaluationFormArn: pulumi.Input; } /** - * The definition of task action. + * Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` */ export interface RuleTaskActionArgs { /** - * The Amazon Resource Name (ARN) of the contact flow. + * The Amazon Resource Name (ARN) of the flow. */ contactFlowArn: pulumi.Input; /** - * The description which appears in the agent's Contact Control Panel (CCP). + * The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ description?: pulumi.Input; /** - * The name which appears in the agent's Contact Control Panel (CCP). + * The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ name: pulumi.Input; /** - * A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + * Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) */ references?: pulumi.Input<{[key: string]: pulumi.Input}>; } /** - * The event source that will trigger the rule. + * The name of the event source. */ export interface RuleTriggerEventSourceArgs { /** - * The name of event source. + * The name of the event source. */ eventSourceName: pulumi.Input; /** - * The Amazon Resource Name (ARN) for the AppIntegration association. + * The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` */ integrationAssociationArn?: pulumi.Input; } - /** - * The definition for update case action. - */ export interface RuleUpdateCaseActionArgs { fields: pulumi.Input[]>; } @@ -17559,11 +17658,11 @@ export namespace connect { */ email?: pulumi.Input; /** - * The first name. This is required if you are using Amazon Connect or SAML for identity management. + * The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. */ firstName?: pulumi.Input; /** - * The last name. This is required if you are using Amazon Connect or SAML for identity management. + * The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. */ lastName?: pulumi.Input; /** @@ -17871,6 +17970,16 @@ export namespace connectcampaignsv2 { agentlessConfig?: pulumi.Input; } + /** + * The event trigger of the campaign + */ + export interface CampaignEventTriggerArgs { + /** + * The Amazon Resource Name (ARN) of the Customer Profiles domain. + */ + customerProfilesDomainArn?: pulumi.Input; + } + /** * Local time zone config */ @@ -17998,13 +18107,17 @@ export namespace connectcampaignsv2 { } /** - * The possible types of channel config parameters + * The possible source of the campaign */ export interface CampaignSourceArgs { /** * The Amazon Resource Name (ARN) of the Customer Profiles segment. */ customerProfilesSegmentArn?: pulumi.Input; + /** + * The event trigger of the campaign. + */ + eventTrigger?: pulumi.Input; } /** @@ -22868,6 +22981,9 @@ export namespace ec2 { } export interface LaunchTemplateCpuArgs { + /** + * The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + */ references?: pulumi.Input[]>; } @@ -23027,6 +23143,7 @@ export namespace ec2 { * The network interfaces for the instance. */ networkInterfaces?: pulumi.Input[]>; + networkPerformanceOptions?: any; /** * The placement for the instance. */ @@ -25331,6 +25448,11 @@ export namespace ec2 { userInfoEndpoint?: pulumi.Input; } + export interface VpcEndpointDnsOptionsSpecificationArgs { + dnsRecordIpType?: pulumi.Input; + privateDnsOnlyForInboundResolverEndpoint?: pulumi.Input; + } + /** * Options for sending VPN tunnel logs to CloudWatch. */ @@ -25888,7 +26010,7 @@ export namespace ecs { */ export interface ServiceAwsVpcConfigurationArgs { /** - * Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + * Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. */ assignPublicIp?: pulumi.Input; /** @@ -26120,7 +26242,7 @@ export namespace ecs { } /** - * The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + * The deployment controller to use for the service. */ export interface ServiceDeploymentControllerArgs { /** @@ -26429,13 +26551,17 @@ export namespace ecs { name: pulumi.Input; } + /** + * The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + */ export interface ServiceVpcLatticeConfigurationArgs { /** - * The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + * The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. */ portName: pulumi.Input; /** - * The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + * The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + * infrastructure IAM role that is used to manage your VPC Lattice infrastructure. */ roleArn: pulumi.Input; /** @@ -26843,7 +26969,7 @@ export namespace ecs { */ export interface TaskDefinitionEphemeralStorageArgs { /** - * The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + * The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. */ sizeInGiB?: pulumi.Input; } @@ -29370,6 +29496,20 @@ export namespace emrserverless { logUri?: pulumi.Input; } + /** + * The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + */ + export interface ApplicationSchedulerConfigurationArgs { + /** + * The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + */ + maxConcurrentRuns?: pulumi.Input; + /** + * The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + */ + queueTimeoutMinutes?: pulumi.Input; + } + export interface ApplicationWorkerConfigurationArgs { /** * Per worker CPU resource. vCPU is the only supported unit and specifying vCPU is optional. @@ -30221,18 +30361,18 @@ export namespace events { export interface RuleSageMakerPipelineParameterArgs { /** - * Name of parameter to start execution of a SageMaker Model Building Pipeline. + * Name of parameter to start execution of a SageMaker AI Model Building Pipeline. */ name: pulumi.Input; /** - * Value of parameter to start execution of a SageMaker Model Building Pipeline. + * Value of parameter to start execution of a SageMaker AI Model Building Pipeline. */ value: pulumi.Input; } export interface RuleSageMakerPipelineParametersArgs { /** - * List of Parameter names and values for SageMaker Model Building Pipeline execution. + * List of Parameter names and values for SageMaker AI Model Building Pipeline execution. */ pipelineParameterList?: pulumi.Input[]>; } @@ -30321,9 +30461,9 @@ export namespace events { */ runCommandParameters?: pulumi.Input; /** - * Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + * Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. * - * If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + * If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. */ sageMakerPipelineParameters?: pulumi.Input; /** @@ -30713,7 +30853,7 @@ export namespace fis { /** * The data sources for the experiment report. */ - dataSources: pulumi.Input; + dataSources?: pulumi.Input; /** * The output destinations of the experiment report. */ @@ -46220,6 +46360,335 @@ export namespace logs { */ openSearchResourceConfig?: pulumi.Input; } + + export interface TransformerAddKeyEntryArgs { + /** + * The key of the new entry to be added to the log event + */ + key: pulumi.Input; + /** + * Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + */ + overwriteIfExists?: pulumi.Input; + /** + * The value of the new entry to be added to the log event + */ + value: pulumi.Input; + } + + export interface TransformerCopyValueEntryArgs { + overwriteIfExists?: pulumi.Input; + source: pulumi.Input; + target: pulumi.Input; + } + + export interface TransformerMoveKeyEntryArgs { + overwriteIfExists?: pulumi.Input; + source: pulumi.Input; + target: pulumi.Input; + } + + export interface TransformerParseCloudfrontArgs { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: pulumi.Input; + } + + export interface TransformerParsePostgresArgs { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: pulumi.Input; + } + + export interface TransformerParseRoute53Args { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: pulumi.Input; + } + + export interface TransformerParseVpcArgs { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: pulumi.Input; + } + + export interface TransformerParseWafArgs { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: pulumi.Input; + } + + /** + * Individual processor configuration + */ + export interface TransformerProcessorArgs { + /** + * Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + */ + addKeys?: pulumi.Input; + /** + * Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + */ + copyValue?: pulumi.Input; + /** + * Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + */ + csv?: pulumi.Input; + /** + * Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + */ + dateTimeConverter?: pulumi.Input; + /** + * Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + */ + deleteKeys?: pulumi.Input; + /** + * Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + */ + grok?: pulumi.Input; + /** + * Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + */ + listToMap?: pulumi.Input; + /** + * Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + */ + lowerCaseString?: pulumi.Input; + /** + * Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + */ + moveKeys?: pulumi.Input; + /** + * Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseCloudfront?: pulumi.Input; + /** + * Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + */ + parseJson?: pulumi.Input; + /** + * Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + */ + parseKeyValue?: pulumi.Input; + /** + * Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parsePostgres?: pulumi.Input; + /** + * Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseRoute53?: pulumi.Input; + /** + * Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseVpc?: pulumi.Input; + /** + * Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseWaf?: pulumi.Input; + /** + * Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + */ + renameKeys?: pulumi.Input; + /** + * Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + */ + splitString?: pulumi.Input; + /** + * Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + */ + substituteString?: pulumi.Input; + /** + * Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + */ + trimString?: pulumi.Input; + /** + * Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + */ + typeConverter?: pulumi.Input; + /** + * Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + */ + upperCaseString?: pulumi.Input; + } + + /** + * Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + */ + export interface TransformerProcessorAddKeysPropertiesArgs { + entries: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + */ + export interface TransformerProcessorCopyValuePropertiesArgs { + entries: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + */ + export interface TransformerProcessorCsvPropertiesArgs { + columns?: pulumi.Input[]>; + delimiter?: pulumi.Input; + quoteCharacter?: pulumi.Input; + source?: pulumi.Input; + } + + /** + * Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + */ + export interface TransformerProcessorDateTimeConverterPropertiesArgs { + locale?: pulumi.Input; + matchPatterns: pulumi.Input[]>; + source: pulumi.Input; + sourceTimezone?: pulumi.Input; + target: pulumi.Input; + targetFormat?: pulumi.Input; + targetTimezone?: pulumi.Input; + } + + /** + * Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + */ + export interface TransformerProcessorDeleteKeysPropertiesArgs { + withKeys: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + */ + export interface TransformerProcessorGrokPropertiesArgs { + match: pulumi.Input; + source?: pulumi.Input; + } + + /** + * Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + */ + export interface TransformerProcessorListToMapPropertiesArgs { + flatten?: pulumi.Input; + flattenedElement?: pulumi.Input; + key: pulumi.Input; + source: pulumi.Input; + target?: pulumi.Input; + valueKey?: pulumi.Input; + } + + /** + * Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + */ + export interface TransformerProcessorLowerCaseStringPropertiesArgs { + withKeys: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + */ + export interface TransformerProcessorMoveKeysPropertiesArgs { + entries: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + */ + export interface TransformerProcessorParseJsonPropertiesArgs { + destination?: pulumi.Input; + source?: pulumi.Input; + } + + /** + * Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + */ + export interface TransformerProcessorParseKeyValuePropertiesArgs { + destination?: pulumi.Input; + fieldDelimiter?: pulumi.Input; + keyPrefix?: pulumi.Input; + keyValueDelimiter?: pulumi.Input; + nonMatchValue?: pulumi.Input; + overwriteIfExists?: pulumi.Input; + source?: pulumi.Input; + } + + /** + * Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + */ + export interface TransformerProcessorRenameKeysPropertiesArgs { + entries: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + */ + export interface TransformerProcessorSplitStringPropertiesArgs { + entries: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + */ + export interface TransformerProcessorSubstituteStringPropertiesArgs { + entries: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + */ + export interface TransformerProcessorTrimStringPropertiesArgs { + withKeys: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + */ + export interface TransformerProcessorTypeConverterPropertiesArgs { + entries: pulumi.Input[]>; + } + + /** + * Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + */ + export interface TransformerProcessorUpperCaseStringPropertiesArgs { + withKeys: pulumi.Input[]>; + } + + export interface TransformerRenameKeyEntryArgs { + key: pulumi.Input; + overwriteIfExists?: pulumi.Input; + renameTo: pulumi.Input; + } + + export interface TransformerSplitStringEntryArgs { + delimiter: pulumi.Input; + source: pulumi.Input; + } + + export interface TransformerSubstituteStringEntryArgs { + from: pulumi.Input; + source: pulumi.Input; + to: pulumi.Input; + } + + export interface TransformerTypeConverterEntryArgs { + key: pulumi.Input; + type: pulumi.Input; + } } export namespace lookoutmetrics { @@ -50187,6 +50656,56 @@ export namespace networkmanager { longitude?: pulumi.Input; } + /** + * The attachment to move from one network function group to another. + */ + export interface DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs { + /** + * The rule number in the policy document that applies to this change. + */ + attachmentPolicyRuleNumber?: pulumi.Input; + /** + * The name of the network function group to change. + */ + networkFunctionGroupName?: pulumi.Input; + /** + * The key-value tags that changed for the network function group. + */ + tags?: pulumi.Input[]>; + } + + /** + * The attachment to move from one segment to another. + */ + export interface DirectConnectGatewayAttachmentProposedSegmentChangeArgs { + /** + * The rule number in the policy document that applies to this change. + */ + attachmentPolicyRuleNumber?: pulumi.Input; + /** + * The name of the segment to change. + */ + segmentName?: pulumi.Input; + /** + * The key-value tags that changed for the segment. + */ + tags?: pulumi.Input[]>; + } + + /** + * A key-value pair to associate with a resource. + */ + export interface DirectConnectGatewayAttachmentTagArgs { + /** + * 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 -. + */ + key: pulumi.Input; + /** + * 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 -. + */ + value: pulumi.Input; + } + /** * The bandwidth for the link. */ @@ -52480,11 +52999,11 @@ export namespace pipes { export interface PipeSageMakerPipelineParameterArgs { /** - * Name of parameter to start execution of a SageMaker Model Building Pipeline. + * Name of parameter to start execution of a SageMaker AI Model Building Pipeline. */ name: pulumi.Input; /** - * Value of parameter to start execution of a SageMaker Model Building Pipeline. + * Value of parameter to start execution of a SageMaker AI Model Building Pipeline. */ value: pulumi.Input; } @@ -52998,7 +53517,7 @@ export namespace pipes { */ redshiftDataParameters?: pulumi.Input; /** - * The parameters for using a SageMaker pipeline as a target. + * The parameters for using a SageMaker AI pipeline as a target. */ sageMakerPipelineParameters?: pulumi.Input; /** @@ -53044,7 +53563,7 @@ export namespace pipes { export interface PipeTargetSageMakerPipelineParametersArgs { /** - * List of Parameter names and values for SageMaker Model Building Pipeline execution. + * List of Parameter names and values for SageMaker AI Model Building Pipeline execution. */ pipelineParameterList?: pulumi.Input[]>; } @@ -53174,33 +53693,81 @@ export namespace qbusiness { } export interface ApplicationQuickSightConfigurationArgs { + /** + * The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + */ clientNamespace: pulumi.Input; } export interface DataAccessorActionConfigurationArgs { + /** + * The Amazon Q Business action that is allowed. + */ action: pulumi.Input; + /** + * The filter configuration for the action, if any. + */ filterConfiguration?: pulumi.Input; } export interface DataAccessorActionFilterConfigurationArgs { + /** + * Enables filtering of responses based on document attributes or metadata fields. + */ documentAttributeFilter: pulumi.Input; } export interface DataAccessorAttributeFilterArgs { + /** + * Performs a logical `AND` operation on all supplied filters. + */ andAllFilters?: pulumi.Input[]>; + /** + * Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + */ containsAll?: pulumi.Input; + /** + * Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + */ containsAny?: pulumi.Input; + /** + * Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + */ equalsTo?: pulumi.Input; + /** + * Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ greaterThan?: pulumi.Input; + /** + * Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ greaterThanOrEquals?: pulumi.Input; + /** + * Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ lessThan?: pulumi.Input; + /** + * Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ lessThanOrEquals?: pulumi.Input; + /** + * Performs a logical `NOT` operation on all supplied filters. + */ notFilter?: pulumi.Input; + /** + * Performs a logical `OR` operation on all supplied filters. + */ orAllFilters?: pulumi.Input[]>; } export interface DataAccessorDocumentAttributeArgs { + /** + * The identifier for the attribute. + */ name: pulumi.Input; + /** + * The value of the attribute. + */ value: pulumi.Input; } @@ -53311,6 +53878,9 @@ export namespace qbusiness { } export interface DataSourceImageExtractionConfigurationArgs { + /** + * Specify whether to extract semantic meaning from images and visuals from documents. + */ imageExtractionStatus: pulumi.Input; } @@ -53330,6 +53900,9 @@ export namespace qbusiness { } export interface DataSourceMediaExtractionConfigurationArgs { + /** + * The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + */ imageExtractionConfiguration?: pulumi.Input; } @@ -53438,9 +54011,21 @@ export namespace qbusiness { } export interface WebExperienceCustomizationConfigurationArgs { + /** + * Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + */ customCssUrl?: pulumi.Input; + /** + * Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + */ faviconUrl?: pulumi.Input; + /** + * Provides the URL where the custom font file is hosted for an Amazon Q web experience. + */ fontUrl?: pulumi.Input; + /** + * Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + */ logoUrl?: pulumi.Input; } @@ -71351,6 +71936,10 @@ export namespace quicksight { parameterName: pulumi.Input; } + export interface DataSetPerformanceConfigurationArgs { + uniqueKeys?: pulumi.Input[]>; + } + /** *

A view of a data source that contains information about the shape of the data in the * underlying source. This is a variant type structure. For this structure to be valid, @@ -71649,6 +72238,10 @@ export namespace quicksight { untagColumnOperation?: pulumi.Input; } + export interface DataSetUniqueKeyArgs { + columnNames: pulumi.Input[]>; + } + /** *

A transform operation that removes tags associated with a column.

*/ @@ -82009,7 +82602,13 @@ export namespace redshiftserverless { } export interface WorkgroupPerformanceTargetArgs { + /** + * The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + */ level?: pulumi.Input; + /** + * Whether the price performance target is enabled for the workgroup. + */ status?: pulumi.Input; } @@ -83595,29 +84194,6 @@ export namespace s3 { targetObjectKeyFormat?: pulumi.Input; } - export interface BucketMetadataTableConfigurationArgs { - /** - * Returns the Error value of the GetBucketMetadataTableConfiguration response. - */ - error?: pulumi.Input; - s3TablesDestination: pulumi.Input; - /** - * Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - */ - status?: pulumi.Input; - } - - export interface BucketMetadataTableErrorArgs { - /** - * If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - */ - errorCode: pulumi.Input; - /** - * If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - */ - errorMessage: pulumi.Input; - } - /** * A container specifying replication metrics-related settings enabling replication metrics and events. */ @@ -84139,25 +84715,6 @@ export namespace s3 { rules: pulumi.Input[]>; } - export interface BucketS3TablesDestinationArgs { - /** - * The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - */ - tableArn?: pulumi.Input; - /** - * The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - */ - tableBucketArn: pulumi.Input; - /** - * The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - */ - tableName: pulumi.Input; - /** - * The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - */ - tableNamespace?: pulumi.Input; - } - /** * Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html). * + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. @@ -85652,7 +86209,7 @@ export namespace sagemaker { */ export interface DomainDefaultSpaceSettingsArgs { /** - * The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + * The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. */ customFileSystemConfigs?: pulumi.Input[]>; /** @@ -85715,7 +86272,7 @@ export namespace sagemaker { */ fileSystemId: pulumi.Input; /** - * The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + * The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. */ fileSystemPath?: pulumi.Input; } @@ -85931,7 +86488,7 @@ export namespace sagemaker { */ codeEditorAppSettings?: pulumi.Input; /** - * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. * * SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. */ @@ -86285,7 +86842,7 @@ export namespace sagemaker { */ container?: pulumi.Input; /** - * The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + * The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. */ modelName?: pulumi.Input; /** @@ -87146,7 +87703,7 @@ export namespace sagemaker { */ export interface ModelCardTrainingMetricArgs { /** - * The name of the result from the SageMaker training job. + * The name of the result from the SageMaker AI training job. */ name: pulumi.Input; /** @@ -87154,7 +87711,7 @@ export namespace sagemaker { */ notes?: pulumi.Input; /** - * The value of a result from the SageMaker training job. + * The value of a result from the SageMaker AI training job. */ value: pulumi.Input; } @@ -88599,7 +89156,7 @@ export namespace sagemaker { */ monitoringAppSpecification: pulumi.Input; /** - * The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + * The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. */ monitoringInputs: pulumi.Input[]>; /** @@ -89017,7 +89574,7 @@ export namespace sagemaker { */ export interface SpaceJupyterServerAppSettingsArgs { /** - * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. */ defaultResourceSpec?: pulumi.Input; /** @@ -89083,7 +89640,7 @@ export namespace sagemaker { */ codeEditorAppSettings?: pulumi.Input; /** - * A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + * A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. */ customFileSystems?: pulumi.Input[]>; /** @@ -89220,7 +89777,7 @@ export namespace sagemaker { */ fileSystemId: pulumi.Input; /** - * The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + * The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. */ fileSystemPath?: pulumi.Input; } @@ -89378,7 +89935,7 @@ export namespace sagemaker { */ codeEditorAppSettings?: pulumi.Input; /** - * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. * * SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. */ @@ -94161,14 +94718,35 @@ export namespace vpclattice { weight?: pulumi.Input; } + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ export interface ResourceConfigurationDefinition0PropertiesArgs { ipResource: pulumi.Input; } + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ export interface ResourceConfigurationDefinition1PropertiesArgs { arnResource: pulumi.Input; } + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ export interface ResourceConfigurationDefinition2PropertiesArgs { dnsResource: pulumi.Input; } @@ -94313,6 +94891,9 @@ export namespace vpclattice { } export interface ServiceNetworkSharingConfigArgs { + /** + * Specify if the service network should be enabled for sharing. + */ enabled: pulumi.Input; } @@ -97476,8 +98057,17 @@ export namespace wisdom { * Content filter config in content policy. */ export interface AiGuardrailGuardrailContentFilterConfigArgs { + /** + * The strength of the input for the guardrail content filter. + */ inputStrength: pulumi.Input; + /** + * The output strength of the guardrail content filter. + */ outputStrength: pulumi.Input; + /** + * The type of the guardrail content filter. + */ type: pulumi.Input; } @@ -97489,6 +98079,9 @@ export namespace wisdom { * The threshold for this filter. */ threshold: pulumi.Input; + /** + * The type of this filter. + */ type: pulumi.Input; } @@ -97496,6 +98089,9 @@ export namespace wisdom { * A managed words config. */ export interface AiGuardrailGuardrailManagedWordsConfigArgs { + /** + * The type of guardrail managed words. + */ type: pulumi.Input; } @@ -97503,6 +98099,9 @@ export namespace wisdom { * Pii entity configuration. */ export interface AiGuardrailGuardrailPiiEntityConfigArgs { + /** + * The action of guardrail PII entity configuration. + */ action: pulumi.Input; type: pulumi.Input; } @@ -97511,6 +98110,9 @@ export namespace wisdom { * A regex configuration. */ export interface AiGuardrailGuardrailRegexConfigArgs { + /** + * The action of the guardrail regex configuration. + */ action: pulumi.Input; /** * The regex description. @@ -97542,6 +98144,9 @@ export namespace wisdom { * Name of topic in topic policy */ name: pulumi.Input; + /** + * Type of topic in a policy. + */ type: pulumi.Input; } @@ -97578,10 +98183,19 @@ export namespace wisdom { } export interface KnowledgeBaseBedrockFoundationModelConfigurationArgs { + /** + * The model ARN of the Bedrock foundation model. + */ modelArn: pulumi.Input; + /** + * The parsing prompt of the Bedrock foundation model configuration. + */ parsingPrompt?: pulumi.Input; } + /** + * The parsing prompt of the Bedrock foundation model configuration. + */ export interface KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs { parsingPromptText: pulumi.Input; } diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index fc98509909..d9ec5a7d10 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -6608,23 +6608,28 @@ export namespace autoscaling { min?: number; } + /** + * ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + */ export interface AutoScalingGroupAvailabilityZoneDistribution { /** - * If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - * - * - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - * - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + * If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + * + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + * + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. */ capacityDistributionStrategy?: enums.autoscaling.AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy; } + /** + * Describes an Availability Zone impairment policy. + */ export interface AutoScalingGroupAvailabilityZoneImpairmentPolicy { /** - * Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + * Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. */ impairedZoneHealthCheckBehavior: enums.autoscaling.AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior; /** - * If `true` , enable zonal shift for your Auto Scaling group. + * If ``true``, enable zonal shift for your Auto Scaling group. */ zonalShiftEnabled: boolean; } @@ -8515,17 +8520,6 @@ export namespace batch { terminateJobsOnUpdate?: boolean; } - export interface JobDefinitionAuthorizationConfig { - /** - * The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - */ - accessPointId?: string; - /** - * Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - */ - iam?: string; - } - export interface JobDefinitionContainerProperties { /** * The command that's passed to the container. This parameter maps to `Cmd` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `COMMAND` parameter to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . For more information, see [https://docs.docker.com/engine/reference/builder/#cmd](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/builder/#cmd) . @@ -8548,7 +8542,7 @@ export namespace batch { /** * The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. */ - fargatePlatformConfiguration?: outputs.batch.JobDefinitionFargatePlatformConfiguration; + fargatePlatformConfiguration?: outputs.batch.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties; /** * Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . * @@ -8561,12 +8555,6 @@ export namespace batch { * - Images in other online repositories are qualified further by a domain name (for example, `quay.io/assemblyline/ubuntu` ). */ image: string; - /** - * The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - * - * > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - */ - instanceType?: string; /** * The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . */ @@ -8594,7 +8582,7 @@ export namespace batch { /** * The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . */ - mountPoints?: outputs.batch.JobDefinitionMountPoints[]; + mountPoints?: outputs.batch.JobDefinitionMountPoint[]; /** * The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. */ @@ -8644,7 +8632,14 @@ export namespace batch { /** * A list of data volumes used in a job. */ - volumes?: outputs.batch.JobDefinitionVolumes[]; + volumes?: outputs.batch.JobDefinitionVolume[]; + } + + /** + * The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. + */ + export interface JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { + platformVersion?: string; } export interface JobDefinitionDevice { @@ -8727,14 +8722,25 @@ export namespace batch { /** * A list of volumes that are associated with the job. */ - volumes?: outputs.batch.JobDefinitionVolumes[]; + volumes?: outputs.batch.JobDefinitionVolume[]; + } + + export interface JobDefinitionEfsAuthorizationConfig { + /** + * The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + */ + accessPointId?: string; + /** + * Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + */ + iam?: string; } export interface JobDefinitionEfsVolumeConfiguration { /** * The authorization configuration details for the Amazon EFS file system. */ - authorizationConfig?: outputs.batch.JobDefinitionAuthorizationConfig; + authorizationConfig?: outputs.batch.JobDefinitionEfsAuthorizationConfig; /** * The Amazon EFS file system ID to use. */ @@ -8821,7 +8827,7 @@ export namespace batch { * - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . * - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . */ - limits?: any; + limits?: {[key: string]: string}; /** * The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. * @@ -8831,7 +8837,7 @@ export namespace batch { * - **cpu** - The number of CPUs that are reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . * - **nvidia.com/gpu** - The number of GPUs that are reserved for the container. Values must be a whole integer. `nvidia.com/gpu` can be specified in `limits` , `requests` , or both. If `nvidia.com/gpu` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . */ - requests?: any; + requests?: {[key: string]: string}; } export interface JobDefinitionEksContainerSecurityContext { @@ -8897,11 +8903,65 @@ export namespace batch { path?: string; } + export interface JobDefinitionEksMetadata { + /** + * Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. + */ + labels?: {[key: string]: string}; + } + + export interface JobDefinitionEksPodProperties { + /** + * The properties of the container that's used on the Amazon EKS pod. + * + * > This object is limited to 10 elements. + */ + containers?: outputs.batch.JobDefinitionEksContainer[]; + /** + * The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + * + * Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` + */ + dnsPolicy?: string; + /** + * Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + */ + hostNetwork?: boolean; + /** + * References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + * + * `ImagePullSecret$name` is required when this object is used. + */ + imagePullSecrets?: outputs.batch.JobDefinitionImagePullSecret[]; + /** + * These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + * + * > This object is limited to 10 elements. + */ + initContainers?: outputs.batch.JobDefinitionEksContainer[]; + /** + * Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + */ + metadata?: outputs.batch.JobDefinitionEksMetadata; + /** + * The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + */ + serviceAccountName?: string; + /** + * Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + */ + shareProcessNamespace?: boolean; + /** + * Specifies the volumes for a job definition that uses Amazon EKS resources. + */ + volumes?: outputs.batch.JobDefinitionEksVolume[]; + } + export interface JobDefinitionEksProperties { /** * The properties for the Kubernetes pod resources of a job. */ - podProperties?: outputs.batch.JobDefinitionPodProperties; + podProperties?: outputs.batch.JobDefinitionEksPodProperties; } export interface JobDefinitionEksSecret { @@ -8973,18 +9033,31 @@ export namespace batch { onStatusReason?: string; } - export interface JobDefinitionFargatePlatformConfiguration { + export interface JobDefinitionHost { /** - * The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . + * The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + * + * > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. */ - platformVersion?: string; + sourcePath?: string; } export interface JobDefinitionImagePullSecret { /** * Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. */ - name: string; + name?: string; + } + + export interface JobDefinitionJobTimeout { + /** + * The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + * + * For array jobs, the timeout applies to the child jobs, not to the parent array job. + * + * For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + */ + attemptDurationSeconds?: number; } export interface JobDefinitionLinuxParameters { @@ -9058,21 +9131,14 @@ export namespace batch { /** * The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` */ - options?: any; + options?: {[key: string]: string}; /** * The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . */ secretOptions?: outputs.batch.JobDefinitionSecret[]; } - export interface JobDefinitionMetadata { - /** - * Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. - */ - labels?: any; - } - - export interface JobDefinitionMountPoints { + export interface JobDefinitionMountPoint { /** * The path on the container where the host volume is mounted. */ @@ -9087,6 +9153,43 @@ export namespace batch { sourceVolume?: string; } + export interface JobDefinitionMultiNodeContainerProperties { + command?: string[]; + environment?: outputs.batch.JobDefinitionEnvironment[]; + ephemeralStorage?: outputs.batch.JobDefinitionEphemeralStorage; + executionRoleArn?: string; + image: string; + instanceType?: string; + jobRoleArn?: string; + linuxParameters?: outputs.batch.JobDefinitionLinuxParameters; + logConfiguration?: outputs.batch.JobDefinitionLogConfiguration; + memory?: number; + mountPoints?: outputs.batch.JobDefinitionMountPoint[]; + privileged?: boolean; + readonlyRootFilesystem?: boolean; + repositoryCredentials?: outputs.batch.JobDefinitionRepositoryCredentials; + resourceRequirements?: outputs.batch.JobDefinitionResourceRequirement[]; + runtimePlatform?: outputs.batch.JobDefinitionRuntimePlatform; + secrets?: outputs.batch.JobDefinitionSecret[]; + ulimits?: outputs.batch.JobDefinitionUlimit[]; + user?: string; + vcpus?: number; + volumes?: outputs.batch.JobDefinitionVolume[]; + } + + export interface JobDefinitionMultiNodeEcsProperties { + taskProperties: outputs.batch.JobDefinitionMultiNodeEcsTaskProperties[]; + } + + export interface JobDefinitionMultiNodeEcsTaskProperties { + containers?: outputs.batch.JobDefinitionTaskContainerProperties[]; + executionRoleArn?: string; + ipcMode?: string; + pidMode?: string; + taskRoleArn?: string; + volumes?: outputs.batch.JobDefinitionVolume[]; + } + export interface JobDefinitionNetworkConfiguration { /** * Indicates whether the job has a public IP address. For a job that's running on Fargate resources in a private subnet to send outbound traffic to the internet (for example, to pull container images), the private subnet requires a NAT gateway be attached to route requests to the internet. For more information, see [Amazon ECS task networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide* . The default value is " `DISABLED` ". @@ -9113,11 +9216,11 @@ export namespace batch { /** * The container details for the node range. */ - container?: outputs.batch.JobDefinitionContainerProperties; + container?: outputs.batch.JobDefinitionMultiNodeContainerProperties; /** * This is an object that represents the properties of the node range for a multi-node parallel job. */ - ecsProperties?: outputs.batch.JobDefinitionEcsProperties; + ecsProperties?: outputs.batch.JobDefinitionMultiNodeEcsProperties; /** * This is an object that represents the properties of the node range for a multi-node parallel job. */ @@ -9136,48 +9239,6 @@ export namespace batch { targetNodes: string; } - export interface JobDefinitionPodProperties { - /** - * The properties of the container that's used on the Amazon EKS pod. - * - * > This object is limited to 10 elements. - */ - containers?: outputs.batch.JobDefinitionEksContainer[]; - /** - * The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - * - * Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - */ - dnsPolicy?: string; - /** - * Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - */ - hostNetwork?: boolean; - imagePullSecrets?: outputs.batch.JobDefinitionImagePullSecret[]; - /** - * These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - * - * > This object is limited to 10 elements. - */ - initContainers?: outputs.batch.JobDefinitionEksContainer[]; - /** - * Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - */ - metadata?: outputs.batch.JobDefinitionMetadata; - /** - * The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - */ - serviceAccountName?: string; - /** - * Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - */ - shareProcessNamespace?: boolean; - /** - * Specifies the volumes for a job definition that uses Amazon EKS resources. - */ - volumes?: outputs.batch.JobDefinitionEksVolume[]; - } - export interface JobDefinitionRepositoryCredentials { /** * The Amazon Resource Name (ARN) of the secret containing the private repository credentials. @@ -9337,7 +9398,7 @@ export namespace batch { * * Windows containers can mount whole directories on the same drive as `$env:ProgramData` . Windows containers can't mount directories on a different drive, and mount point can't be across drives. */ - mountPoints?: outputs.batch.JobDefinitionMountPoints[]; + mountPoints?: outputs.batch.JobDefinitionMountPoint[]; /** * The name of a container. The name can be used as a unique identifier to target your `dependsOn` and `Overrides` objects. */ @@ -9395,17 +9456,6 @@ export namespace batch { user?: string; } - export interface JobDefinitionTimeout { - /** - * The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - * - * For array jobs, the timeout applies to the child jobs, not to the parent array job. - * - * For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - */ - attemptDurationSeconds?: number; - } - export interface JobDefinitionTmpfs { /** * The absolute file path in the container where the `tmpfs` volume is mounted. @@ -9438,9 +9488,9 @@ export namespace batch { softLimit: number; } - export interface JobDefinitionVolumes { + export interface JobDefinitionVolume { /** - * This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . + * This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . */ efsVolumeConfiguration?: outputs.batch.JobDefinitionEfsVolumeConfiguration; /** @@ -9448,22 +9498,13 @@ export namespace batch { * * > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. */ - host?: outputs.batch.JobDefinitionVolumesHost; + host?: outputs.batch.JobDefinitionHost; /** * The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . */ name?: string; } - export interface JobDefinitionVolumesHost { - /** - * The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - * - * > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - */ - sourcePath?: string; - } - export interface JobQueueComputeEnvironmentOrder { /** * The Amazon Resource Name (ARN) of the compute environment. @@ -12363,6 +12404,11 @@ export namespace cassandra { targetValue: number; } + export interface TypeField { + fieldName: string; + fieldType: string; + } + } export namespace ce { @@ -12667,6 +12713,13 @@ export namespace cleanrooms { custom: outputs.cleanrooms.ConfiguredTableAssociationAnalysisRuleCustom; } + export interface ConfiguredTableAthenaTableReference { + databaseName: string; + outputLocation?: string; + tableName: string; + workGroup: string; + } + export interface ConfiguredTableDifferentialPrivacy { columns: outputs.cleanrooms.ConfiguredTableDifferentialPrivacyColumn[]; } @@ -12676,23 +12729,40 @@ export namespace cleanrooms { } export interface ConfiguredTableGlueTableReference { - /** - * The name of the database the AWS Glue table belongs to. - */ databaseName: string; - /** - * The name of the AWS Glue table. - */ tableName: string; } - export interface ConfiguredTableTableReference { - /** - * If present, a reference to the AWS Glue table referred to by this table reference. - */ + export interface ConfiguredTableSnowflakeTableReference { + accountIdentifier: string; + databaseName: string; + schemaName: string; + secretArn: string; + tableName: string; + tableSchema: outputs.cleanrooms.ConfiguredTableSnowflakeTableSchemaProperties; + } + + export interface ConfiguredTableSnowflakeTableSchemaProperties { + v1: outputs.cleanrooms.ConfiguredTableSnowflakeTableSchemaV1[]; + } + + export interface ConfiguredTableSnowflakeTableSchemaV1 { + columnName: string; + columnType: string; + } + + export interface ConfiguredTableTableReference0Properties { glue: outputs.cleanrooms.ConfiguredTableGlueTableReference; } + export interface ConfiguredTableTableReference1Properties { + snowflake: outputs.cleanrooms.ConfiguredTableSnowflakeTableReference; + } + + export interface ConfiguredTableTableReference2Properties { + athena: outputs.cleanrooms.ConfiguredTableAthenaTableReference; + } + export interface IdMappingTableInputReferenceConfig { /** * The Amazon Resource Name (ARN) of the referenced resource in AWS Entity Resolution . Valid values are ID mapping workflow ARNs. @@ -13076,15 +13146,15 @@ export namespace cloudformation { */ concurrencyMode?: enums.cloudformation.StackSetConcurrencyMode; /** - * The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + * The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. * * Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). */ failureToleranceCount?: number; /** - * The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + * The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. * - * When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + * When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. * * Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. */ @@ -13100,7 +13170,7 @@ export namespace cloudformation { /** * The maximum percentage of accounts in which to perform this operation at one time. * - * When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + * When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. * * Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. * @@ -13495,6 +13565,10 @@ export namespace cloudfront { * A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior. */ functionAssociations?: outputs.cloudfront.DistributionFunctionAssociation[]; + /** + * The gRPC configuration for your cache behavior. + */ + grpcConfig?: outputs.cloudfront.DistributionGrpcConfig; /** * A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. */ @@ -13827,6 +13901,10 @@ export namespace cloudfront { * A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior. */ functionAssociations?: outputs.cloudfront.DistributionFunctionAssociation[]; + /** + * The gRPC configuration for your cache behavior. + */ + grpcConfig?: outputs.cloudfront.DistributionGrpcConfig; /** * A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. */ @@ -13960,6 +14038,13 @@ export namespace cloudfront { restrictionType: string; } + export interface DistributionGrpcConfig { + /** + * Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + */ + enabled: boolean; + } + /** * A complex type that contains a Lambda@Edge function association. */ @@ -14034,7 +14119,7 @@ export namespace cloudfront { /** * The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. */ - bucket: string; + bucket?: string; /** * Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. */ @@ -14141,6 +14226,10 @@ export namespace cloudfront { * A complex type that contains information about the origins in an origin group. */ members: outputs.cloudfront.DistributionOriginGroupMembers; + /** + * The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + */ + selectionCriteria?: enums.cloudfront.DistributionOriginGroupSelectionCriteria; } /** @@ -17608,8 +17697,17 @@ export namespace connect { * Overrides attached to the hours of operation. */ export interface HoursOfOperationOverride { + /** + * The date from which the hours of operation override would be effective. + */ effectiveFrom: string; + /** + * The date till which the hours of operation override would be effective. + */ effectiveTill: string; + /** + * The identifier for the hours of operation override. + */ hoursOfOperationOverrideId?: string; overrideConfig: outputs.connect.HoursOfOperationOverrideConfig[]; overrideDescription?: string; @@ -17753,6 +17851,16 @@ export namespace connect { outboundFlowArn?: string; } + /** + * The outbound email address ID. + */ + export interface QueueOutboundEmailConfig { + /** + * The identifier of the email address. + */ + outboundEmailAddressId?: string; + } + /** * Configuration settings for the quick connect. */ @@ -17880,17 +17988,17 @@ export namespace connect { } /** - * The list of actions that will be executed when a rule is triggered. + * A list of actions to be run when the rule is triggered. */ export interface RuleActions { /** - * Information about the contact category action. The syntax can be empty, for example, `{}` . + * Information about the contact category action. The syntax can be empty, for example, ``{}``. */ assignContactCategoryActions?: outputs.connect.RuleAssignContactCategoryAction[]; createCaseActions?: outputs.connect.RuleCreateCaseAction[]; endAssociatedTasksActions?: outputs.connect.RuleEndAssociatedTasksAction[]; /** - * Information about the EventBridge action. + * Information about the EV action. */ eventBridgeActions?: outputs.connect.RuleEventBridgeAction[]; /** @@ -17899,7 +18007,7 @@ export namespace connect { sendNotificationActions?: outputs.connect.RuleSendNotificationAction[]; submitAutoEvaluationActions?: outputs.connect.RuleSubmitAutoEvaluationAction[]; /** - * Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + * Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` */ taskActions?: outputs.connect.RuleTaskAction[]; updateCaseActions?: outputs.connect.RuleUpdateCaseAction[]; @@ -17911,14 +18019,8 @@ export namespace connect { export interface RuleAssignContactCategoryAction { } - /** - * The definition for create case action. - */ export interface RuleCreateCaseAction { fields: outputs.connect.RuleField[]; - /** - * The Id of template. - */ templateId: string; } @@ -17929,28 +18031,22 @@ export namespace connect { } /** - * The definition for event bridge action. + * The EV action definition. */ export interface RuleEventBridgeAction { /** - * The name of the event bridge action. + * The name. */ name: string; } - /** - * The field of the case. - */ export interface RuleField { - /** - * The Id of the field - */ id: string; value: outputs.connect.RuleFieldValue; } /** - * The value of the field. + * Object for case field values. */ export interface RuleFieldValue { booleanValue?: boolean; @@ -17964,95 +18060,98 @@ export namespace connect { */ export interface RuleNotificationRecipientType { /** - * The list of recipients by user arns. + * The Amazon Resource Name (ARN) of the user account. */ userArns?: string[]; /** - * The collection of recipients who are identified by user tags + * The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. */ userTags?: {[key: string]: string}; } /** - * A contact reference. + * Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) */ export interface RuleReference { + /** + * The type of the reference. ``DATE`` must be of type Epoch timestamp. + * *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + */ type: enums.connect.RuleReferenceType; + /** + * A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + */ value: string; } /** - * The definition for sending notification action. + * Information about the send notification action. */ export interface RuleSendNotificationAction { /** - * The content of notification. + * Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ content: string; /** - * The type of content. + * Content type format. + * *Allowed value*: ``PLAIN_TEXT`` */ contentType: enums.connect.RuleSendNotificationActionContentType; /** - * The means of delivery. + * Notification delivery method. + * *Allowed value*: ``EMAIL`` */ deliveryMethod: enums.connect.RuleSendNotificationActionDeliveryMethod; + /** + * Notification recipient. + */ recipient: outputs.connect.RuleNotificationRecipientType; /** - * The subject of notification. + * The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ subject?: string; } - /** - * The definition of submit auto evaluation action. - */ export interface RuleSubmitAutoEvaluationAction { - /** - * The Amazon Resource Name (ARN) of the evaluation form. - */ evaluationFormArn: string; } /** - * The definition of task action. + * Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` */ export interface RuleTaskAction { /** - * The Amazon Resource Name (ARN) of the contact flow. + * The Amazon Resource Name (ARN) of the flow. */ contactFlowArn: string; /** - * The description which appears in the agent's Contact Control Panel (CCP). + * The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ description?: string; /** - * The name which appears in the agent's Contact Control Panel (CCP). + * The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. */ name: string; /** - * A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + * Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) */ references?: {[key: string]: outputs.connect.RuleReference}; } /** - * The event source that will trigger the rule. + * The name of the event source. */ export interface RuleTriggerEventSource { /** - * The name of event source. + * The name of the event source. */ eventSourceName: enums.connect.RuleTriggerEventSourceEventSourceName; /** - * The Amazon Resource Name (ARN) for the AppIntegration association. + * The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` */ integrationAssociationArn?: string; } - /** - * The definition for update case action. - */ export interface RuleUpdateCaseAction { fields: outputs.connect.RuleField[]; } @@ -18271,11 +18370,11 @@ export namespace connect { */ email?: string; /** - * The first name. This is required if you are using Amazon Connect or SAML for identity management. + * The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. */ firstName?: string; /** - * The last name. This is required if you are using Amazon Connect or SAML for identity management. + * The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. */ lastName?: string; /** @@ -18583,6 +18682,16 @@ export namespace connectcampaignsv2 { agentlessConfig?: outputs.connectcampaignsv2.CampaignAgentlessConfig; } + /** + * The event trigger of the campaign + */ + export interface CampaignEventTrigger { + /** + * The Amazon Resource Name (ARN) of the Customer Profiles domain. + */ + customerProfilesDomainArn?: string; + } + /** * Local time zone config */ @@ -18710,13 +18819,17 @@ export namespace connectcampaignsv2 { } /** - * The possible types of channel config parameters + * The possible source of the campaign */ export interface CampaignSource { /** * The Amazon Resource Name (ARN) of the Customer Profiles segment. */ customerProfilesSegmentArn?: string; + /** + * The event trigger of the campaign. + */ + eventTrigger?: outputs.connectcampaignsv2.CampaignEventTrigger; } /** @@ -23683,6 +23796,9 @@ export namespace ec2 { } export interface LaunchTemplateCpu { + /** + * The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + */ references?: outputs.ec2.LaunchTemplateReference[]; } @@ -23842,6 +23958,7 @@ export namespace ec2 { * The network interfaces for the instance. */ networkInterfaces?: outputs.ec2.LaunchTemplateNetworkInterface[]; + networkPerformanceOptions?: any; /** * The placement for the instance. */ @@ -26688,6 +26805,11 @@ export namespace ec2 { userInfoEndpoint?: string; } + export interface VpcEndpointDnsOptionsSpecification { + dnsRecordIpType?: enums.ec2.VpcEndpointDnsOptionsSpecificationDnsRecordIpType; + privateDnsOnlyForInboundResolverEndpoint?: enums.ec2.VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint; + } + /** * Options for sending VPN tunnel logs to CloudWatch. */ @@ -27245,7 +27367,7 @@ export namespace ecs { */ export interface ServiceAwsVpcConfiguration { /** - * Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + * Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. */ assignPublicIp?: enums.ecs.ServiceAwsVpcConfigurationAssignPublicIp; /** @@ -27477,7 +27599,7 @@ export namespace ecs { } /** - * The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + * The deployment controller to use for the service. */ export interface ServiceDeploymentController { /** @@ -27786,13 +27908,17 @@ export namespace ecs { name: string; } + /** + * The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + */ export interface ServiceVpcLatticeConfiguration { /** - * The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + * The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. */ portName: string; /** - * The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + * The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + * infrastructure IAM role that is used to manage your VPC Lattice infrastructure. */ roleArn: string; /** @@ -28200,7 +28326,7 @@ export namespace ecs { */ export interface TaskDefinitionEphemeralStorage { /** - * The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + * The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. */ sizeInGiB?: number; } @@ -30748,6 +30874,20 @@ export namespace emrserverless { logUri?: string; } + /** + * The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + */ + export interface ApplicationSchedulerConfiguration { + /** + * The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + */ + maxConcurrentRuns?: number; + /** + * The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + */ + queueTimeoutMinutes?: number; + } + export interface ApplicationWorkerConfiguration { /** * Per worker CPU resource. vCPU is the only supported unit and specifying vCPU is optional. @@ -31600,18 +31740,18 @@ export namespace events { export interface RuleSageMakerPipelineParameter { /** - * Name of parameter to start execution of a SageMaker Model Building Pipeline. + * Name of parameter to start execution of a SageMaker AI Model Building Pipeline. */ name: string; /** - * Value of parameter to start execution of a SageMaker Model Building Pipeline. + * Value of parameter to start execution of a SageMaker AI Model Building Pipeline. */ value: string; } export interface RuleSageMakerPipelineParameters { /** - * List of Parameter names and values for SageMaker Model Building Pipeline execution. + * List of Parameter names and values for SageMaker AI Model Building Pipeline execution. */ pipelineParameterList?: outputs.events.RuleSageMakerPipelineParameter[]; } @@ -31700,9 +31840,9 @@ export namespace events { */ runCommandParameters?: outputs.events.RuleRunCommandParameters; /** - * Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + * Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. * - * If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + * If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. */ sageMakerPipelineParameters?: outputs.events.RuleSageMakerPipelineParameters; /** @@ -32093,7 +32233,7 @@ export namespace fis { /** * The data sources for the experiment report. */ - dataSources: outputs.fis.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties; + dataSources?: outputs.fis.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties; /** * The output destinations of the experiment report. */ @@ -47717,6 +47857,335 @@ export namespace logs { openSearchResourceConfig?: outputs.logs.IntegrationOpenSearchResourceConfig; } + export interface TransformerAddKeyEntry { + /** + * The key of the new entry to be added to the log event + */ + key: string; + /** + * Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + */ + overwriteIfExists?: boolean; + /** + * The value of the new entry to be added to the log event + */ + value: string; + } + + export interface TransformerCopyValueEntry { + overwriteIfExists?: boolean; + source: string; + target: string; + } + + export interface TransformerMoveKeyEntry { + overwriteIfExists?: boolean; + source: string; + target: string; + } + + export interface TransformerParseCloudfront { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: string; + } + + export interface TransformerParsePostgres { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: string; + } + + export interface TransformerParseRoute53 { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: string; + } + + export interface TransformerParseVpc { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: string; + } + + export interface TransformerParseWaf { + /** + * Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + */ + source?: string; + } + + /** + * Individual processor configuration + */ + export interface TransformerProcessor { + /** + * Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + */ + addKeys?: outputs.logs.TransformerProcessorAddKeysProperties; + /** + * Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + */ + copyValue?: outputs.logs.TransformerProcessorCopyValueProperties; + /** + * Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + */ + csv?: outputs.logs.TransformerProcessorCsvProperties; + /** + * Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + */ + dateTimeConverter?: outputs.logs.TransformerProcessorDateTimeConverterProperties; + /** + * Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + */ + deleteKeys?: outputs.logs.TransformerProcessorDeleteKeysProperties; + /** + * Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + */ + grok?: outputs.logs.TransformerProcessorGrokProperties; + /** + * Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + */ + listToMap?: outputs.logs.TransformerProcessorListToMapProperties; + /** + * Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + */ + lowerCaseString?: outputs.logs.TransformerProcessorLowerCaseStringProperties; + /** + * Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + */ + moveKeys?: outputs.logs.TransformerProcessorMoveKeysProperties; + /** + * Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseCloudfront?: outputs.logs.TransformerParseCloudfront; + /** + * Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + */ + parseJson?: outputs.logs.TransformerProcessorParseJsonProperties; + /** + * Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + */ + parseKeyValue?: outputs.logs.TransformerProcessorParseKeyValueProperties; + /** + * Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parsePostgres?: outputs.logs.TransformerParsePostgres; + /** + * Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseRoute53?: outputs.logs.TransformerParseRoute53; + /** + * Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseVpc?: outputs.logs.TransformerParseVpc; + /** + * Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + * + * If you use this processor, it must be the first processor in your transformer. + */ + parseWaf?: outputs.logs.TransformerParseWaf; + /** + * Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + */ + renameKeys?: outputs.logs.TransformerProcessorRenameKeysProperties; + /** + * Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + */ + splitString?: outputs.logs.TransformerProcessorSplitStringProperties; + /** + * Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + */ + substituteString?: outputs.logs.TransformerProcessorSubstituteStringProperties; + /** + * Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + */ + trimString?: outputs.logs.TransformerProcessorTrimStringProperties; + /** + * Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + */ + typeConverter?: outputs.logs.TransformerProcessorTypeConverterProperties; + /** + * Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + */ + upperCaseString?: outputs.logs.TransformerProcessorUpperCaseStringProperties; + } + + /** + * Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + */ + export interface TransformerProcessorAddKeysProperties { + entries: outputs.logs.TransformerAddKeyEntry[]; + } + + /** + * Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + */ + export interface TransformerProcessorCopyValueProperties { + entries: outputs.logs.TransformerCopyValueEntry[]; + } + + /** + * Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + */ + export interface TransformerProcessorCsvProperties { + columns?: string[]; + delimiter?: string; + quoteCharacter?: string; + source?: string; + } + + /** + * Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + */ + export interface TransformerProcessorDateTimeConverterProperties { + locale?: string; + matchPatterns: string[]; + source: string; + sourceTimezone?: string; + target: string; + targetFormat?: string; + targetTimezone?: string; + } + + /** + * Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + */ + export interface TransformerProcessorDeleteKeysProperties { + withKeys: string[]; + } + + /** + * Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + */ + export interface TransformerProcessorGrokProperties { + match: string; + source?: string; + } + + /** + * Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + */ + export interface TransformerProcessorListToMapProperties { + flatten?: boolean; + flattenedElement?: enums.logs.TransformerProcessorListToMapPropertiesFlattenedElement; + key: string; + source: string; + target?: string; + valueKey?: string; + } + + /** + * Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + */ + export interface TransformerProcessorLowerCaseStringProperties { + withKeys: string[]; + } + + /** + * Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + */ + export interface TransformerProcessorMoveKeysProperties { + entries: outputs.logs.TransformerMoveKeyEntry[]; + } + + /** + * Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + */ + export interface TransformerProcessorParseJsonProperties { + destination?: string; + source?: string; + } + + /** + * Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + */ + export interface TransformerProcessorParseKeyValueProperties { + destination?: string; + fieldDelimiter?: string; + keyPrefix?: string; + keyValueDelimiter?: string; + nonMatchValue?: string; + overwriteIfExists?: boolean; + source?: string; + } + + /** + * Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + */ + export interface TransformerProcessorRenameKeysProperties { + entries: outputs.logs.TransformerRenameKeyEntry[]; + } + + /** + * Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + */ + export interface TransformerProcessorSplitStringProperties { + entries: outputs.logs.TransformerSplitStringEntry[]; + } + + /** + * Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + */ + export interface TransformerProcessorSubstituteStringProperties { + entries: outputs.logs.TransformerSubstituteStringEntry[]; + } + + /** + * Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + */ + export interface TransformerProcessorTrimStringProperties { + withKeys: string[]; + } + + /** + * Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + */ + export interface TransformerProcessorTypeConverterProperties { + entries: outputs.logs.TransformerTypeConverterEntry[]; + } + + /** + * Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + */ + export interface TransformerProcessorUpperCaseStringProperties { + withKeys: string[]; + } + + export interface TransformerRenameKeyEntry { + key: string; + overwriteIfExists?: boolean; + renameTo: string; + } + + export interface TransformerSplitStringEntry { + delimiter: string; + source: string; + } + + export interface TransformerSubstituteStringEntry { + from: string; + source: string; + to: string; + } + + export interface TransformerTypeConverterEntry { + key: string; + type: enums.logs.TransformerTypeConverterEntryType; + } + } export namespace lookoutmetrics { @@ -51867,6 +52336,56 @@ export namespace networkmanager { longitude?: string; } + /** + * The attachment to move from one network function group to another. + */ + export interface DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange { + /** + * The rule number in the policy document that applies to this change. + */ + attachmentPolicyRuleNumber?: number; + /** + * The name of the network function group to change. + */ + networkFunctionGroupName?: string; + /** + * The key-value tags that changed for the network function group. + */ + tags?: outputs.networkmanager.DirectConnectGatewayAttachmentTag[]; + } + + /** + * The attachment to move from one segment to another. + */ + export interface DirectConnectGatewayAttachmentProposedSegmentChange { + /** + * The rule number in the policy document that applies to this change. + */ + attachmentPolicyRuleNumber?: number; + /** + * The name of the segment to change. + */ + segmentName?: string; + /** + * The key-value tags that changed for the segment. + */ + tags?: outputs.networkmanager.DirectConnectGatewayAttachmentTag[]; + } + + /** + * A key-value pair to associate with a resource. + */ + export interface DirectConnectGatewayAttachmentTag { + /** + * 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 -. + */ + key: string; + /** + * 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 -. + */ + value: string; + } + /** * The bandwidth for the link. */ @@ -54249,11 +54768,11 @@ export namespace pipes { export interface PipeSageMakerPipelineParameter { /** - * Name of parameter to start execution of a SageMaker Model Building Pipeline. + * Name of parameter to start execution of a SageMaker AI Model Building Pipeline. */ name: string; /** - * Value of parameter to start execution of a SageMaker Model Building Pipeline. + * Value of parameter to start execution of a SageMaker AI Model Building Pipeline. */ value: string; } @@ -54767,7 +55286,7 @@ export namespace pipes { */ redshiftDataParameters?: outputs.pipes.PipeTargetRedshiftDataParameters; /** - * The parameters for using a SageMaker pipeline as a target. + * The parameters for using a SageMaker AI pipeline as a target. */ sageMakerPipelineParameters?: outputs.pipes.PipeTargetSageMakerPipelineParameters; /** @@ -54813,7 +55332,7 @@ export namespace pipes { export interface PipeTargetSageMakerPipelineParameters { /** - * List of Parameter names and values for SageMaker Model Building Pipeline execution. + * List of Parameter names and values for SageMaker AI Model Building Pipeline execution. */ pipelineParameterList?: outputs.pipes.PipeSageMakerPipelineParameter[]; } @@ -54944,33 +55463,81 @@ export namespace qbusiness { } export interface ApplicationQuickSightConfiguration { + /** + * The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + */ clientNamespace: string; } export interface DataAccessorActionConfiguration { + /** + * The Amazon Q Business action that is allowed. + */ action: string; + /** + * The filter configuration for the action, if any. + */ filterConfiguration?: outputs.qbusiness.DataAccessorActionFilterConfiguration; } export interface DataAccessorActionFilterConfiguration { + /** + * Enables filtering of responses based on document attributes or metadata fields. + */ documentAttributeFilter: outputs.qbusiness.DataAccessorAttributeFilter; } export interface DataAccessorAttributeFilter { + /** + * Performs a logical `AND` operation on all supplied filters. + */ andAllFilters?: outputs.qbusiness.DataAccessorAttributeFilter[]; + /** + * Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + */ containsAll?: outputs.qbusiness.DataAccessorDocumentAttribute; + /** + * Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + */ containsAny?: outputs.qbusiness.DataAccessorDocumentAttribute; + /** + * Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + */ equalsTo?: outputs.qbusiness.DataAccessorDocumentAttribute; + /** + * Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ greaterThan?: outputs.qbusiness.DataAccessorDocumentAttribute; + /** + * Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ greaterThanOrEquals?: outputs.qbusiness.DataAccessorDocumentAttribute; + /** + * Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ lessThan?: outputs.qbusiness.DataAccessorDocumentAttribute; + /** + * Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + */ lessThanOrEquals?: outputs.qbusiness.DataAccessorDocumentAttribute; + /** + * Performs a logical `NOT` operation on all supplied filters. + */ notFilter?: outputs.qbusiness.DataAccessorAttributeFilter; + /** + * Performs a logical `OR` operation on all supplied filters. + */ orAllFilters?: outputs.qbusiness.DataAccessorAttributeFilter[]; } export interface DataAccessorDocumentAttribute { + /** + * The identifier for the attribute. + */ name: string; + /** + * The value of the attribute. + */ value: outputs.qbusiness.DataAccessorDocumentAttributeValue0Properties | outputs.qbusiness.DataAccessorDocumentAttributeValue1Properties | outputs.qbusiness.DataAccessorDocumentAttributeValue2Properties | outputs.qbusiness.DataAccessorDocumentAttributeValue3Properties; } @@ -55081,6 +55648,9 @@ export namespace qbusiness { } export interface DataSourceImageExtractionConfiguration { + /** + * Specify whether to extract semantic meaning from images and visuals from documents. + */ imageExtractionStatus: enums.qbusiness.DataSourceImageExtractionStatus; } @@ -55100,6 +55670,9 @@ export namespace qbusiness { } export interface DataSourceMediaExtractionConfiguration { + /** + * The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + */ imageExtractionConfiguration?: outputs.qbusiness.DataSourceImageExtractionConfiguration; } @@ -55226,9 +55799,21 @@ export namespace qbusiness { } export interface WebExperienceCustomizationConfiguration { + /** + * Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + */ customCssUrl?: string; + /** + * Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + */ faviconUrl?: string; + /** + * Provides the URL where the custom font file is hosted for an Amazon Q web experience. + */ fontUrl?: string; + /** + * Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + */ logoUrl?: string; } @@ -73253,6 +73838,10 @@ export namespace quicksight { parameterName: string; } + export interface DataSetPerformanceConfiguration { + uniqueKeys?: outputs.quicksight.DataSetUniqueKey[]; + } + /** *

A view of a data source that contains information about the shape of the data in the * underlying source. This is a variant type structure. For this structure to be valid, @@ -73551,6 +74140,10 @@ export namespace quicksight { untagColumnOperation?: outputs.quicksight.DataSetUntagColumnOperation; } + export interface DataSetUniqueKey { + columnNames: string[]; + } + /** *

A transform operation that removes tags associated with a column.

*/ @@ -84229,6 +84822,9 @@ export namespace redshiftserverless { * The namespace the workgroup is associated with. */ namespaceName?: string; + /** + * An object that represents the price performance target settings for the workgroup. + */ pricePerformanceTarget?: outputs.redshiftserverless.WorkgroupPerformanceTarget; /** * A value that specifies whether the workgroup can be accessible from a public network. @@ -84306,7 +84902,13 @@ export namespace redshiftserverless { } export interface WorkgroupPerformanceTarget { + /** + * The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + */ level?: number; + /** + * Whether the price performance target is enabled for the workgroup. + */ status?: enums.redshiftserverless.WorkgroupPerformanceTargetStatus; } @@ -85926,29 +86528,6 @@ export namespace s3 { targetObjectKeyFormat?: outputs.s3.BucketTargetObjectKeyFormat; } - export interface BucketMetadataTableConfiguration { - /** - * Returns the Error value of the GetBucketMetadataTableConfiguration response. - */ - error?: outputs.s3.BucketMetadataTableError; - s3TablesDestination: outputs.s3.BucketS3TablesDestination; - /** - * Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - */ - status?: string; - } - - export interface BucketMetadataTableError { - /** - * If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - */ - errorCode: string; - /** - * If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - */ - errorMessage: string; - } - /** * A container specifying replication metrics-related settings enabling replication metrics and events. */ @@ -86470,25 +87049,6 @@ export namespace s3 { rules: outputs.s3.BucketFilterRule[]; } - export interface BucketS3TablesDestination { - /** - * The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - */ - tableArn?: string; - /** - * The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - */ - tableBucketArn: string; - /** - * The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - */ - tableName: string; - /** - * The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - */ - tableNamespace?: string; - } - /** * Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html). * + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. @@ -88051,7 +88611,7 @@ export namespace sagemaker { */ export interface DomainDefaultSpaceSettings { /** - * The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + * The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. */ customFileSystemConfigs?: outputs.sagemaker.DomainCustomFileSystemConfig[]; /** @@ -88114,7 +88674,7 @@ export namespace sagemaker { */ fileSystemId: string; /** - * The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + * The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. */ fileSystemPath?: string; } @@ -88330,7 +88890,7 @@ export namespace sagemaker { */ codeEditorAppSettings?: outputs.sagemaker.DomainCodeEditorAppSettings; /** - * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. * * SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. */ @@ -88684,7 +89244,7 @@ export namespace sagemaker { */ container?: outputs.sagemaker.InferenceComponentContainerSpecification; /** - * The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + * The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. */ modelName?: string; /** @@ -89563,7 +90123,7 @@ export namespace sagemaker { */ export interface ModelCardTrainingMetric { /** - * The name of the result from the SageMaker training job. + * The name of the result from the SageMaker AI training job. */ name: string; /** @@ -89571,7 +90131,7 @@ export namespace sagemaker { */ notes?: string; /** - * The value of a result from the SageMaker training job. + * The value of a result from the SageMaker AI training job. */ value: number; } @@ -91016,7 +91576,7 @@ export namespace sagemaker { */ monitoringAppSpecification: outputs.sagemaker.MonitoringScheduleMonitoringAppSpecification; /** - * The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + * The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. */ monitoringInputs: outputs.sagemaker.MonitoringScheduleMonitoringInput[]; /** @@ -91434,7 +91994,7 @@ export namespace sagemaker { */ export interface SpaceJupyterServerAppSettings { /** - * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. */ defaultResourceSpec?: outputs.sagemaker.SpaceResourceSpec; /** @@ -91500,7 +92060,7 @@ export namespace sagemaker { */ codeEditorAppSettings?: outputs.sagemaker.SpaceCodeEditorAppSettings; /** - * A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + * A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. */ customFileSystems?: outputs.sagemaker.SpaceCustomFileSystem[]; /** @@ -91637,7 +92197,7 @@ export namespace sagemaker { */ fileSystemId: string; /** - * The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + * The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. */ fileSystemPath?: string; } @@ -91795,7 +92355,7 @@ export namespace sagemaker { */ codeEditorAppSettings?: outputs.sagemaker.UserProfileCodeEditorAppSettings; /** - * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + * The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. * * SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. */ @@ -96619,14 +97179,35 @@ export namespace vpclattice { weight?: number; } + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ export interface ResourceConfigurationDefinition0Properties { ipResource: string; } + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ export interface ResourceConfigurationDefinition1Properties { arnResource: string; } + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ export interface ResourceConfigurationDefinition2Properties { dnsResource: outputs.vpclattice.ResourceConfigurationDnsResource; } @@ -96771,6 +97352,9 @@ export namespace vpclattice { } export interface ServiceNetworkSharingConfig { + /** + * Specify if the service network should be enabled for sharing. + */ enabled: boolean; } @@ -99936,8 +100520,17 @@ export namespace wisdom { * Content filter config in content policy. */ export interface AiGuardrailGuardrailContentFilterConfig { + /** + * The strength of the input for the guardrail content filter. + */ inputStrength: enums.wisdom.AiGuardrailGuardrailFilterStrength; + /** + * The output strength of the guardrail content filter. + */ outputStrength: enums.wisdom.AiGuardrailGuardrailFilterStrength; + /** + * The type of the guardrail content filter. + */ type: enums.wisdom.AiGuardrailGuardrailContentFilterType; } @@ -99949,6 +100542,9 @@ export namespace wisdom { * The threshold for this filter. */ threshold: number; + /** + * The type of this filter. + */ type: enums.wisdom.AiGuardrailGuardrailContextualGroundingFilterType; } @@ -99956,6 +100552,9 @@ export namespace wisdom { * A managed words config. */ export interface AiGuardrailGuardrailManagedWordsConfig { + /** + * The type of guardrail managed words. + */ type: enums.wisdom.AiGuardrailGuardrailManagedWordsType; } @@ -99963,6 +100562,9 @@ export namespace wisdom { * Pii entity configuration. */ export interface AiGuardrailGuardrailPiiEntityConfig { + /** + * The action of guardrail PII entity configuration. + */ action: enums.wisdom.AiGuardrailGuardrailSensitiveInformationAction; type: enums.wisdom.AiGuardrailGuardrailPiiEntityType; } @@ -99971,6 +100573,9 @@ export namespace wisdom { * A regex configuration. */ export interface AiGuardrailGuardrailRegexConfig { + /** + * The action of the guardrail regex configuration. + */ action: enums.wisdom.AiGuardrailGuardrailSensitiveInformationAction; /** * The regex description. @@ -100002,6 +100607,9 @@ export namespace wisdom { * Name of topic in topic policy */ name: string; + /** + * Type of topic in a policy. + */ type: enums.wisdom.AiGuardrailGuardrailTopicType; } @@ -100038,10 +100646,19 @@ export namespace wisdom { } export interface KnowledgeBaseBedrockFoundationModelConfiguration { + /** + * The model ARN of the Bedrock foundation model. + */ modelArn: string; + /** + * The parsing prompt of the Bedrock foundation model configuration. + */ parsingPrompt?: outputs.wisdom.KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties; } + /** + * The parsing prompt of the Bedrock foundation model configuration. + */ export interface KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties { parsingPromptText: string; } diff --git a/sdk/nodejs/vpclattice/getResourceConfiguration.ts b/sdk/nodejs/vpclattice/getResourceConfiguration.ts index 1a36e6af02..61aee9b17f 100644 --- a/sdk/nodejs/vpclattice/getResourceConfiguration.ts +++ b/sdk/nodejs/vpclattice/getResourceConfiguration.ts @@ -18,16 +18,44 @@ export function getResourceConfiguration(args: GetResourceConfigurationArgs, opt } export interface GetResourceConfigurationArgs { + /** + * The Amazon Resource Name (ARN) of the resource configuration. + */ arn: string; } export interface GetResourceConfigurationResult { + /** + * Specifies whether the resource configuration can be associated with a sharable service network. + */ readonly allowAssociationToSharableServiceNetwork?: boolean; + /** + * The Amazon Resource Name (ARN) of the resource configuration. + */ readonly arn?: string; + /** + * The ID of the resource configuration. + */ readonly id?: string; + /** + * The name of the resource configuration. + */ readonly name?: string; + /** + * (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + */ readonly portRanges?: string[]; + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ readonly resourceConfigurationDefinition?: outputs.vpclattice.ResourceConfigurationDefinition0Properties | outputs.vpclattice.ResourceConfigurationDefinition1Properties | outputs.vpclattice.ResourceConfigurationDefinition2Properties; + /** + * The tags for the resource configuration. + */ readonly tags?: outputs.Tag[]; } /** @@ -41,5 +69,8 @@ export function getResourceConfigurationOutput(args: GetResourceConfigurationOut } export interface GetResourceConfigurationOutputArgs { + /** + * The Amazon Resource Name (ARN) of the resource configuration. + */ arn: pulumi.Input; } diff --git a/sdk/nodejs/vpclattice/getResourceGateway.ts b/sdk/nodejs/vpclattice/getResourceGateway.ts index fa477453a3..54de1a0577 100644 --- a/sdk/nodejs/vpclattice/getResourceGateway.ts +++ b/sdk/nodejs/vpclattice/getResourceGateway.ts @@ -18,16 +18,28 @@ export function getResourceGateway(args: GetResourceGatewayArgs, opts?: pulumi.I } export interface GetResourceGatewayArgs { + /** + * The Amazon Resource Name (ARN) of the resource gateway. + */ arn: string; } export interface GetResourceGatewayResult { + /** + * The Amazon Resource Name (ARN) of the resource gateway. + */ readonly arn?: string; + /** + * The ID of the resource gateway. + */ readonly id?: string; /** * The ID of one or more security groups to associate with the endpoint network interface. */ readonly securityGroupIds?: string[]; + /** + * The tags for the resource gateway. + */ readonly tags?: outputs.Tag[]; } /** @@ -41,5 +53,8 @@ export function getResourceGatewayOutput(args: GetResourceGatewayOutputArgs, opt } export interface GetResourceGatewayOutputArgs { + /** + * The Amazon Resource Name (ARN) of the resource gateway. + */ arn: pulumi.Input; } diff --git a/sdk/nodejs/vpclattice/getServiceNetwork.ts b/sdk/nodejs/vpclattice/getServiceNetwork.ts index f77658630b..d90021e4cf 100644 --- a/sdk/nodejs/vpclattice/getServiceNetwork.ts +++ b/sdk/nodejs/vpclattice/getServiceNetwork.ts @@ -48,6 +48,9 @@ export interface GetServiceNetworkResult { * The date and time of the last update, specified in ISO-8601 format. */ readonly lastUpdatedAt?: string; + /** + * Specify if the service network should be enabled for sharing. + */ readonly sharingConfig?: outputs.vpclattice.ServiceNetworkSharingConfig; /** * The tags for the service network. diff --git a/sdk/nodejs/vpclattice/getServiceNetworkResourceAssociation.ts b/sdk/nodejs/vpclattice/getServiceNetworkResourceAssociation.ts index 80c9f1c489..99206c8851 100644 --- a/sdk/nodejs/vpclattice/getServiceNetworkResourceAssociation.ts +++ b/sdk/nodejs/vpclattice/getServiceNetworkResourceAssociation.ts @@ -18,12 +18,24 @@ export function getServiceNetworkResourceAssociation(args: GetServiceNetworkReso } export interface GetServiceNetworkResourceAssociationArgs { + /** + * The Amazon Resource Name (ARN) of the association. + */ arn: string; } export interface GetServiceNetworkResourceAssociationResult { + /** + * The Amazon Resource Name (ARN) of the association. + */ readonly arn?: string; + /** + * The ID of the association between the service network and resource configuration. + */ readonly id?: string; + /** + * A key-value pair to associate with a resource. + */ readonly tags?: outputs.Tag[]; } /** @@ -37,5 +49,8 @@ export function getServiceNetworkResourceAssociationOutput(args: GetServiceNetwo } export interface GetServiceNetworkResourceAssociationOutputArgs { + /** + * The Amazon Resource Name (ARN) of the association. + */ arn: pulumi.Input; } diff --git a/sdk/nodejs/vpclattice/resourceConfiguration.ts b/sdk/nodejs/vpclattice/resourceConfiguration.ts index 127c349a80..cddebf49e4 100644 --- a/sdk/nodejs/vpclattice/resourceConfiguration.ts +++ b/sdk/nodejs/vpclattice/resourceConfiguration.ts @@ -37,17 +37,62 @@ export class ResourceConfiguration extends pulumi.CustomResource { return obj['__pulumiType'] === ResourceConfiguration.__pulumiType; } + /** + * Specifies whether the resource configuration can be associated with a sharable service network. + */ public readonly allowAssociationToSharableServiceNetwork!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) of the resource configuration. + */ public /*out*/ readonly arn!: pulumi.Output; + /** + * The ID of the resource configuration. + */ public /*out*/ readonly awsId!: pulumi.Output; + /** + * The name of the resource configuration. + */ public readonly name!: pulumi.Output; + /** + * (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + */ public readonly portRanges!: pulumi.Output; + /** + * (SINGLE, GROUP) The protocol accepted by the resource configuration. + */ public readonly protocolType!: pulumi.Output; + /** + * The auth type for the resource configuration. + */ public readonly resourceConfigurationAuthType!: pulumi.Output; + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ public readonly resourceConfigurationDefinition!: pulumi.Output; + /** + * The ID of the group resource configuration. + */ public readonly resourceConfigurationGroupId!: pulumi.Output; + /** + * The type of resource configuration. A resource configuration can be one of the following types: + * + * - *SINGLE* - A single resource. + * - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + * - *CHILD* - A single resource that is part of a group resource configuration. + * - *ARN* - An AWS resource. + */ public readonly resourceConfigurationType!: pulumi.Output; + /** + * The ID of the resource gateway. + */ public readonly resourceGatewayId!: pulumi.Output; + /** + * The tags for the resource configuration. + */ public readonly tags!: pulumi.Output; /** @@ -98,14 +143,53 @@ export class ResourceConfiguration extends pulumi.CustomResource { * The set of arguments for constructing a ResourceConfiguration resource. */ export interface ResourceConfigurationArgs { + /** + * Specifies whether the resource configuration can be associated with a sharable service network. + */ allowAssociationToSharableServiceNetwork?: pulumi.Input; + /** + * The name of the resource configuration. + */ name?: pulumi.Input; + /** + * (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + */ portRanges?: pulumi.Input[]>; + /** + * (SINGLE, GROUP) The protocol accepted by the resource configuration. + */ protocolType?: pulumi.Input; + /** + * The auth type for the resource configuration. + */ resourceConfigurationAuthType?: pulumi.Input; + /** + * Identifies the resource configuration in one of the following ways: + * + * - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + * - *Domain name* - Any domain name that is publicly resolvable. + * - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + */ resourceConfigurationDefinition?: pulumi.Input; + /** + * The ID of the group resource configuration. + */ resourceConfigurationGroupId?: pulumi.Input; + /** + * The type of resource configuration. A resource configuration can be one of the following types: + * + * - *SINGLE* - A single resource. + * - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + * - *CHILD* - A single resource that is part of a group resource configuration. + * - *ARN* - An AWS resource. + */ resourceConfigurationType?: pulumi.Input; + /** + * The ID of the resource gateway. + */ resourceGatewayId?: pulumi.Input; + /** + * The tags for the resource configuration. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/vpclattice/resourceGateway.ts b/sdk/nodejs/vpclattice/resourceGateway.ts index 1791fa2716..5f3c533f0a 100644 --- a/sdk/nodejs/vpclattice/resourceGateway.ts +++ b/sdk/nodejs/vpclattice/resourceGateway.ts @@ -37,9 +37,21 @@ export class ResourceGateway extends pulumi.CustomResource { return obj['__pulumiType'] === ResourceGateway.__pulumiType; } + /** + * The Amazon Resource Name (ARN) of the resource gateway. + */ public /*out*/ readonly arn!: pulumi.Output; + /** + * The ID of the resource gateway. + */ public /*out*/ readonly awsId!: pulumi.Output; + /** + * The type of IP address used by the resource gateway. + */ public readonly ipAddressType!: pulumi.Output; + /** + * The name of the resource gateway. + */ public readonly name!: pulumi.Output; /** * The ID of one or more security groups to associate with the endpoint network interface. @@ -49,7 +61,13 @@ export class ResourceGateway extends pulumi.CustomResource { * The ID of one or more subnets in which to create an endpoint network interface. */ public readonly subnetIds!: pulumi.Output; + /** + * The tags for the resource gateway. + */ public readonly tags!: pulumi.Output; + /** + * The ID of the VPC for the resource gateway. + */ public readonly vpcIdentifier!: pulumi.Output; /** @@ -92,7 +110,13 @@ export class ResourceGateway extends pulumi.CustomResource { * The set of arguments for constructing a ResourceGateway resource. */ export interface ResourceGatewayArgs { + /** + * The type of IP address used by the resource gateway. + */ ipAddressType?: pulumi.Input; + /** + * The name of the resource gateway. + */ name?: pulumi.Input; /** * The ID of one or more security groups to associate with the endpoint network interface. @@ -102,6 +126,12 @@ export interface ResourceGatewayArgs { * The ID of one or more subnets in which to create an endpoint network interface. */ subnetIds?: pulumi.Input[]>; + /** + * The tags for the resource gateway. + */ tags?: pulumi.Input[]>; + /** + * The ID of the VPC for the resource gateway. + */ vpcIdentifier?: pulumi.Input; } diff --git a/sdk/nodejs/vpclattice/serviceNetwork.ts b/sdk/nodejs/vpclattice/serviceNetwork.ts index 74e51edf57..d3e75fd7be 100644 --- a/sdk/nodejs/vpclattice/serviceNetwork.ts +++ b/sdk/nodejs/vpclattice/serviceNetwork.ts @@ -66,6 +66,9 @@ export class ServiceNetwork extends pulumi.CustomResource { * If you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name. */ public readonly name!: pulumi.Output; + /** + * Specify if the service network should be enabled for sharing. + */ public readonly sharingConfig!: pulumi.Output; /** * The tags for the service network. @@ -125,6 +128,9 @@ export interface ServiceNetworkArgs { * If you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name. */ name?: pulumi.Input; + /** + * Specify if the service network should be enabled for sharing. + */ sharingConfig?: pulumi.Input; /** * The tags for the service network. diff --git a/sdk/nodejs/vpclattice/serviceNetworkResourceAssociation.ts b/sdk/nodejs/vpclattice/serviceNetworkResourceAssociation.ts index 2abb6cbf9c..bff2064431 100644 --- a/sdk/nodejs/vpclattice/serviceNetworkResourceAssociation.ts +++ b/sdk/nodejs/vpclattice/serviceNetworkResourceAssociation.ts @@ -37,10 +37,25 @@ export class ServiceNetworkResourceAssociation extends pulumi.CustomResource { return obj['__pulumiType'] === ServiceNetworkResourceAssociation.__pulumiType; } + /** + * The Amazon Resource Name (ARN) of the association. + */ public /*out*/ readonly arn!: pulumi.Output; + /** + * The ID of the association between the service network and resource configuration. + */ public /*out*/ readonly awsId!: pulumi.Output; + /** + * The ID of the resource configuration associated with the service network. + */ public readonly resourceConfigurationId!: pulumi.Output; + /** + * The ID of the service network associated with the resource configuration. + */ public readonly serviceNetworkId!: pulumi.Output; + /** + * A key-value pair to associate with a resource. + */ public readonly tags!: pulumi.Output; /** @@ -77,7 +92,16 @@ export class ServiceNetworkResourceAssociation extends pulumi.CustomResource { * The set of arguments for constructing a ServiceNetworkResourceAssociation resource. */ export interface ServiceNetworkResourceAssociationArgs { + /** + * The ID of the resource configuration associated with the service network. + */ resourceConfigurationId?: pulumi.Input; + /** + * The ID of the service network associated with the resource configuration. + */ serviceNetworkId?: pulumi.Input; + /** + * A key-value pair to associate with a resource. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/wisdom/aiGuardrailVersion.ts b/sdk/nodejs/wisdom/aiGuardrailVersion.ts index f0931c85ff..540bd1dd74 100644 --- a/sdk/nodejs/wisdom/aiGuardrailVersion.ts +++ b/sdk/nodejs/wisdom/aiGuardrailVersion.ts @@ -34,11 +34,29 @@ export class AiGuardrailVersion extends pulumi.CustomResource { return obj['__pulumiType'] === AiGuardrailVersion.__pulumiType; } + /** + * The ARN of the AI guardrail version. + */ public /*out*/ readonly aiGuardrailArn!: pulumi.Output; + /** + * The ID of the AI guardrail version. + */ public readonly aiGuardrailId!: pulumi.Output; + /** + * The ID of the AI guardrail version. + */ public /*out*/ readonly aiGuardrailVersionId!: pulumi.Output; + /** + * The ARN of the AI guardrail version assistant. + */ public /*out*/ readonly assistantArn!: pulumi.Output; + /** + * The ID of the AI guardrail version assistant. + */ public readonly assistantId!: pulumi.Output; + /** + * The modified time of the AI guardrail version in seconds. + */ public readonly modifiedTimeSeconds!: pulumi.Output; /** * The version number for this AI Guardrail version. @@ -89,7 +107,16 @@ export class AiGuardrailVersion extends pulumi.CustomResource { * The set of arguments for constructing a AiGuardrailVersion resource. */ export interface AiGuardrailVersionArgs { + /** + * The ID of the AI guardrail version. + */ aiGuardrailId: pulumi.Input; + /** + * The ID of the AI guardrail version assistant. + */ assistantId: pulumi.Input; + /** + * The modified time of the AI guardrail version in seconds. + */ modifiedTimeSeconds?: pulumi.Input; } diff --git a/sdk/nodejs/wisdom/aiPromptVersion.ts b/sdk/nodejs/wisdom/aiPromptVersion.ts index 8204b90044..53e7372d3c 100644 --- a/sdk/nodejs/wisdom/aiPromptVersion.ts +++ b/sdk/nodejs/wisdom/aiPromptVersion.ts @@ -34,6 +34,9 @@ export class AiPromptVersion extends pulumi.CustomResource { return obj['__pulumiType'] === AiPromptVersion.__pulumiType; } + /** + * The ARN of the AI prompt. + */ public /*out*/ readonly aiPromptArn!: pulumi.Output; /** * The identifier of the Amazon Q in Connect AI prompt. diff --git a/sdk/nodejs/wisdom/getAiGuardrailVersion.ts b/sdk/nodejs/wisdom/getAiGuardrailVersion.ts index bf8f3289bc..f3f1ecfe31 100644 --- a/sdk/nodejs/wisdom/getAiGuardrailVersion.ts +++ b/sdk/nodejs/wisdom/getAiGuardrailVersion.ts @@ -17,7 +17,13 @@ export function getAiGuardrailVersion(args: GetAiGuardrailVersionArgs, opts?: pu } export interface GetAiGuardrailVersionArgs { + /** + * The ID of the AI guardrail version. + */ aiGuardrailId: string; + /** + * The ID of the AI guardrail version assistant. + */ assistantId: string; /** * The version number for this AI Guardrail version. @@ -26,8 +32,17 @@ export interface GetAiGuardrailVersionArgs { } export interface GetAiGuardrailVersionResult { + /** + * The ARN of the AI guardrail version. + */ readonly aiGuardrailArn?: string; + /** + * The ID of the AI guardrail version. + */ readonly aiGuardrailVersionId?: string; + /** + * The ARN of the AI guardrail version assistant. + */ readonly assistantArn?: string; /** * The version number for this AI Guardrail version. @@ -47,7 +62,13 @@ export function getAiGuardrailVersionOutput(args: GetAiGuardrailVersionOutputArg } export interface GetAiGuardrailVersionOutputArgs { + /** + * The ID of the AI guardrail version. + */ aiGuardrailId: pulumi.Input; + /** + * The ID of the AI guardrail version assistant. + */ assistantId: pulumi.Input; /** * The version number for this AI Guardrail version. diff --git a/sdk/nodejs/wisdom/getAiPromptVersion.ts b/sdk/nodejs/wisdom/getAiPromptVersion.ts index 6046767992..c4bbc9ecde 100644 --- a/sdk/nodejs/wisdom/getAiPromptVersion.ts +++ b/sdk/nodejs/wisdom/getAiPromptVersion.ts @@ -32,6 +32,9 @@ export interface GetAiPromptVersionArgs { } export interface GetAiPromptVersionResult { + /** + * The ARN of the AI prompt. + */ readonly aiPromptArn?: string; readonly aiPromptVersionId?: string; readonly assistantArn?: string; diff --git a/sdk/nodejs/workspaces/getWorkspacesPool.ts b/sdk/nodejs/workspaces/getWorkspacesPool.ts index bd3a5e94c6..717d18a8a0 100644 --- a/sdk/nodejs/workspaces/getWorkspacesPool.ts +++ b/sdk/nodejs/workspaces/getWorkspacesPool.ts @@ -57,6 +57,7 @@ export interface GetWorkspacesPoolResult { * The identifier of the pool. */ readonly poolId?: string; + readonly tags?: outputs.Tag[]; /** * The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. */ diff --git a/sdk/nodejs/workspaces/workspacesPool.ts b/sdk/nodejs/workspaces/workspacesPool.ts index 6f693744b3..e1d8571a80 100644 --- a/sdk/nodejs/workspaces/workspacesPool.ts +++ b/sdk/nodejs/workspaces/workspacesPool.ts @@ -73,9 +73,6 @@ export class WorkspacesPool extends pulumi.CustomResource { * The name of the pool. */ public readonly poolName!: pulumi.Output; - /** - * The tags for the pool. - */ public readonly tags!: pulumi.Output; /** * The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. @@ -161,9 +158,6 @@ export interface WorkspacesPoolArgs { * The name of the pool. */ poolName?: pulumi.Input; - /** - * The tags for the pool. - */ tags?: pulumi.Input[]>; /** * The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. diff --git a/sdk/python/pulumi_aws_native/__init__.py b/sdk/python/pulumi_aws_native/__init__.py index d485aa7e16..e62d8e2abf 100644 --- a/sdk/python/pulumi_aws_native/__init__.py +++ b/sdk/python/pulumi_aws_native/__init__.py @@ -1016,7 +1016,8 @@ "fqn": "pulumi_aws_native.cassandra", "classes": { "aws-native:cassandra:Keyspace": "Keyspace", - "aws-native:cassandra:Table": "Table" + "aws-native:cassandra:Table": "Table", + "aws-native:cassandra:Type": "Type" } }, { @@ -2292,7 +2293,8 @@ "aws-native:logs:MetricFilter": "MetricFilter", "aws-native:logs:QueryDefinition": "QueryDefinition", "aws-native:logs:ResourcePolicy": "ResourcePolicy", - "aws-native:logs:SubscriptionFilter": "SubscriptionFilter" + "aws-native:logs:SubscriptionFilter": "SubscriptionFilter", + "aws-native:logs:Transformer": "Transformer" } }, { @@ -2478,6 +2480,7 @@ "aws-native:networkmanager:CoreNetwork": "CoreNetwork", "aws-native:networkmanager:CustomerGatewayAssociation": "CustomerGatewayAssociation", "aws-native:networkmanager:Device": "Device", + "aws-native:networkmanager:DirectConnectGatewayAttachment": "DirectConnectGatewayAttachment", "aws-native:networkmanager:GlobalNetwork": "GlobalNetwork", "aws-native:networkmanager:Link": "Link", "aws-native:networkmanager:LinkAssociation": "LinkAssociation", diff --git a/sdk/python/pulumi_aws_native/appconfig/_enums.py b/sdk/python/pulumi_aws_native/appconfig/_enums.py index 38d917a0ee..dca00a1ca7 100644 --- a/sdk/python/pulumi_aws_native/appconfig/_enums.py +++ b/sdk/python/pulumi_aws_native/appconfig/_enums.py @@ -5,11 +5,22 @@ from enum import Enum __all__ = [ + 'ConfigurationProfileDeletionProtectionCheck', 'DeploymentStrategyGrowthType', 'DeploymentStrategyReplicateTo', + 'EnvironmentDeletionProtectionCheck', ] +class ConfigurationProfileDeletionProtectionCheck(str, Enum): + """ + On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + """ + ACCOUNT_DEFAULT = "ACCOUNT_DEFAULT" + APPLY = "APPLY" + BYPASS = "BYPASS" + + class DeploymentStrategyGrowthType(str, Enum): """ The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types: @@ -36,3 +47,12 @@ class DeploymentStrategyReplicateTo(str, Enum): """ NONE = "NONE" SSM_DOCUMENT = "SSM_DOCUMENT" + + +class EnvironmentDeletionProtectionCheck(str, Enum): + """ + On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + """ + ACCOUNT_DEFAULT = "ACCOUNT_DEFAULT" + APPLY = "APPLY" + BYPASS = "BYPASS" diff --git a/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py b/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py index c30ed9abf8..ebeb353b5e 100644 --- a/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py +++ b/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py @@ -16,6 +16,7 @@ from . import outputs from .. import _inputs as _root_inputs from .. import outputs as _root_outputs +from ._enums import * from ._inputs import * __all__ = ['ConfigurationProfileArgs', 'ConfigurationProfile'] @@ -25,6 +26,7 @@ class ConfigurationProfileArgs: def __init__(__self__, *, application_id: pulumi.Input[str], location_uri: pulumi.Input[str], + deletion_protection_check: Optional[pulumi.Input['ConfigurationProfileDeletionProtectionCheck']] = None, description: Optional[pulumi.Input[str]] = None, kms_key_identifier: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -36,6 +38,7 @@ def __init__(__self__, *, The set of arguments for constructing a ConfigurationProfile resource. :param pulumi.Input[str] application_id: The application ID. :param pulumi.Input[str] location_uri: A URI to locate the configuration. You can specify the AWS AppConfig hosted configuration store, Systems Manager (SSM) document, an SSM Parameter Store parameter, or an Amazon S3 object. + :param pulumi.Input['ConfigurationProfileDeletionProtectionCheck'] deletion_protection_check: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html :param pulumi.Input[str] description: A description of the configuration profile. :param pulumi.Input[str] kms_key_identifier: The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated. :param pulumi.Input[str] name: A name for the configuration profile. @@ -46,6 +49,8 @@ def __init__(__self__, *, """ pulumi.set(__self__, "application_id", application_id) pulumi.set(__self__, "location_uri", location_uri) + if deletion_protection_check is not None: + pulumi.set(__self__, "deletion_protection_check", deletion_protection_check) if description is not None: pulumi.set(__self__, "description", description) if kms_key_identifier is not None: @@ -85,6 +90,18 @@ def location_uri(self) -> pulumi.Input[str]: def location_uri(self, value: pulumi.Input[str]): pulumi.set(self, "location_uri", value) + @property + @pulumi.getter(name="deletionProtectionCheck") + def deletion_protection_check(self) -> Optional[pulumi.Input['ConfigurationProfileDeletionProtectionCheck']]: + """ + On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + """ + return pulumi.get(self, "deletion_protection_check") + + @deletion_protection_check.setter + def deletion_protection_check(self, value: Optional[pulumi.Input['ConfigurationProfileDeletionProtectionCheck']]): + pulumi.set(self, "deletion_protection_check", value) + @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -176,6 +193,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, + deletion_protection_check: Optional[pulumi.Input['ConfigurationProfileDeletionProtectionCheck']] = None, description: Optional[pulumi.Input[str]] = None, kms_key_identifier: Optional[pulumi.Input[str]] = None, location_uri: Optional[pulumi.Input[str]] = None, @@ -191,6 +209,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The application ID. + :param pulumi.Input['ConfigurationProfileDeletionProtectionCheck'] deletion_protection_check: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html :param pulumi.Input[str] description: A description of the configuration profile. :param pulumi.Input[str] kms_key_identifier: The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated. :param pulumi.Input[str] location_uri: A URI to locate the configuration. You can specify the AWS AppConfig hosted configuration store, Systems Manager (SSM) document, an SSM Parameter Store parameter, or an Amazon S3 object. @@ -225,6 +244,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, + deletion_protection_check: Optional[pulumi.Input['ConfigurationProfileDeletionProtectionCheck']] = None, description: Optional[pulumi.Input[str]] = None, kms_key_identifier: Optional[pulumi.Input[str]] = None, location_uri: Optional[pulumi.Input[str]] = None, @@ -245,6 +265,7 @@ def _internal_init(__self__, if application_id is None and not opts.urn: raise TypeError("Missing required property 'application_id'") __props__.__dict__["application_id"] = application_id + __props__.__dict__["deletion_protection_check"] = deletion_protection_check __props__.__dict__["description"] = description __props__.__dict__["kms_key_identifier"] = kms_key_identifier if location_uri is None and not opts.urn: @@ -283,6 +304,7 @@ def get(resource_name: str, __props__.__dict__["application_id"] = None __props__.__dict__["configuration_profile_id"] = None + __props__.__dict__["deletion_protection_check"] = None __props__.__dict__["description"] = None __props__.__dict__["kms_key_arn"] = None __props__.__dict__["kms_key_identifier"] = None @@ -310,6 +332,14 @@ def configuration_profile_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "configuration_profile_id") + @property + @pulumi.getter(name="deletionProtectionCheck") + def deletion_protection_check(self) -> pulumi.Output[Optional['ConfigurationProfileDeletionProtectionCheck']]: + """ + On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + """ + return pulumi.get(self, "deletion_protection_check") + @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/appconfig/environment.py b/sdk/python/pulumi_aws_native/appconfig/environment.py index d3745d1471..be65036c2e 100644 --- a/sdk/python/pulumi_aws_native/appconfig/environment.py +++ b/sdk/python/pulumi_aws_native/appconfig/environment.py @@ -16,6 +16,7 @@ from . import outputs from .. import _inputs as _root_inputs from .. import outputs as _root_outputs +from ._enums import * from ._inputs import * __all__ = ['EnvironmentArgs', 'Environment'] @@ -24,6 +25,7 @@ class EnvironmentArgs: def __init__(__self__, *, application_id: pulumi.Input[str], + deletion_protection_check: Optional[pulumi.Input['EnvironmentDeletionProtectionCheck']] = None, description: Optional[pulumi.Input[str]] = None, monitors: Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentMonitorArgs']]]] = None, name: Optional[pulumi.Input[str]] = None, @@ -31,12 +33,15 @@ def __init__(__self__, *, """ The set of arguments for constructing a Environment resource. :param pulumi.Input[str] application_id: The application ID. + :param pulumi.Input['EnvironmentDeletionProtectionCheck'] deletion_protection_check: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html :param pulumi.Input[str] description: A description of the environment. :param pulumi.Input[Sequence[pulumi.Input['EnvironmentMonitorArgs']]] monitors: Amazon CloudWatch alarms to monitor during the deployment process. :param pulumi.Input[str] name: A name for the environment. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: 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. """ pulumi.set(__self__, "application_id", application_id) + if deletion_protection_check is not None: + pulumi.set(__self__, "deletion_protection_check", deletion_protection_check) if description is not None: pulumi.set(__self__, "description", description) if monitors is not None: @@ -58,6 +63,18 @@ def application_id(self) -> pulumi.Input[str]: def application_id(self, value: pulumi.Input[str]): pulumi.set(self, "application_id", value) + @property + @pulumi.getter(name="deletionProtectionCheck") + def deletion_protection_check(self) -> Optional[pulumi.Input['EnvironmentDeletionProtectionCheck']]: + """ + On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + """ + return pulumi.get(self, "deletion_protection_check") + + @deletion_protection_check.setter + def deletion_protection_check(self, value: Optional[pulumi.Input['EnvironmentDeletionProtectionCheck']]): + pulumi.set(self, "deletion_protection_check", value) + @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -113,6 +130,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, + deletion_protection_check: Optional[pulumi.Input['EnvironmentDeletionProtectionCheck']] = None, description: Optional[pulumi.Input[str]] = None, monitors: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentMonitorArgs', 'EnvironmentMonitorArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, @@ -124,6 +142,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The application ID. + :param pulumi.Input['EnvironmentDeletionProtectionCheck'] deletion_protection_check: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html :param pulumi.Input[str] description: A description of the environment. :param pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentMonitorArgs', 'EnvironmentMonitorArgsDict']]]] monitors: Amazon CloudWatch alarms to monitor during the deployment process. :param pulumi.Input[str] name: A name for the environment. @@ -154,6 +173,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, + deletion_protection_check: Optional[pulumi.Input['EnvironmentDeletionProtectionCheck']] = None, description: Optional[pulumi.Input[str]] = None, monitors: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentMonitorArgs', 'EnvironmentMonitorArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, @@ -170,6 +190,7 @@ def _internal_init(__self__, if application_id is None and not opts.urn: raise TypeError("Missing required property 'application_id'") __props__.__dict__["application_id"] = application_id + __props__.__dict__["deletion_protection_check"] = deletion_protection_check __props__.__dict__["description"] = description __props__.__dict__["monitors"] = monitors __props__.__dict__["name"] = name @@ -200,6 +221,7 @@ def get(resource_name: str, __props__ = EnvironmentArgs.__new__(EnvironmentArgs) __props__.__dict__["application_id"] = None + __props__.__dict__["deletion_protection_check"] = None __props__.__dict__["description"] = None __props__.__dict__["environment_id"] = None __props__.__dict__["monitors"] = None @@ -215,6 +237,14 @@ def application_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "application_id") + @property + @pulumi.getter(name="deletionProtectionCheck") + def deletion_protection_check(self) -> pulumi.Output[Optional['EnvironmentDeletionProtectionCheck']]: + """ + On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html + """ + return pulumi.get(self, "deletion_protection_check") + @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/autoscaling/_enums.py b/sdk/python/pulumi_aws_native/autoscaling/_enums.py index e369e983b3..d045ab4842 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/_enums.py +++ b/sdk/python/pulumi_aws_native/autoscaling/_enums.py @@ -12,10 +12,9 @@ class AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy(str, Enum): """ - If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - - - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. """ BALANCED_BEST_EFFORT = "balanced-best-effort" BALANCED_ONLY = "balanced-only" @@ -23,7 +22,7 @@ class AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy(s class AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior(str, Enum): """ - Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. """ IGNORE_UNHEALTHY = "IgnoreUnhealthy" REPLACE_UNHEALTHY = "ReplaceUnhealthy" diff --git a/sdk/python/pulumi_aws_native/autoscaling/_inputs.py b/sdk/python/pulumi_aws_native/autoscaling/_inputs.py index 659e7b9fe8..980ef1f45c 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/_inputs.py +++ b/sdk/python/pulumi_aws_native/autoscaling/_inputs.py @@ -234,12 +234,14 @@ def min(self, value: Optional[pulumi.Input[int]]): if not MYPY: class AutoScalingGroupAvailabilityZoneDistributionArgsDict(TypedDict): + """ + ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + """ capacity_distribution_strategy: NotRequired[pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']] """ - If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - - - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. """ elif False: AutoScalingGroupAvailabilityZoneDistributionArgsDict: TypeAlias = Mapping[str, Any] @@ -249,10 +251,10 @@ class AutoScalingGroupAvailabilityZoneDistributionArgs: def __init__(__self__, *, capacity_distribution_strategy: Optional[pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']] = None): """ - :param pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy'] capacity_distribution_strategy: If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - - - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + :param pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy'] capacity_distribution_strategy: If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. """ if capacity_distribution_strategy is not None: pulumi.set(__self__, "capacity_distribution_strategy", capacity_distribution_strategy) @@ -261,10 +263,9 @@ def __init__(__self__, *, @pulumi.getter(name="capacityDistributionStrategy") def capacity_distribution_strategy(self) -> Optional[pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']]: """ - If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - - - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. """ return pulumi.get(self, "capacity_distribution_strategy") @@ -275,13 +276,16 @@ def capacity_distribution_strategy(self, value: Optional[pulumi.Input['AutoScali if not MYPY: class AutoScalingGroupAvailabilityZoneImpairmentPolicyArgsDict(TypedDict): + """ + Describes an Availability Zone impairment policy. + """ impaired_zone_health_check_behavior: pulumi.Input['AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior'] """ - Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. """ zonal_shift_enabled: pulumi.Input[bool] """ - If `true` , enable zonal shift for your Auto Scaling group. + If ``true``, enable zonal shift for your Auto Scaling group. """ elif False: AutoScalingGroupAvailabilityZoneImpairmentPolicyArgsDict: TypeAlias = Mapping[str, Any] @@ -292,8 +296,9 @@ def __init__(__self__, *, impaired_zone_health_check_behavior: pulumi.Input['AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior'], zonal_shift_enabled: pulumi.Input[bool]): """ - :param pulumi.Input['AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior'] impaired_zone_health_check_behavior: Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . - :param pulumi.Input[bool] zonal_shift_enabled: If `true` , enable zonal shift for your Auto Scaling group. + Describes an Availability Zone impairment policy. + :param pulumi.Input['AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior'] impaired_zone_health_check_behavior: Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. + :param pulumi.Input[bool] zonal_shift_enabled: If ``true``, enable zonal shift for your Auto Scaling group. """ pulumi.set(__self__, "impaired_zone_health_check_behavior", impaired_zone_health_check_behavior) pulumi.set(__self__, "zonal_shift_enabled", zonal_shift_enabled) @@ -302,7 +307,7 @@ def __init__(__self__, *, @pulumi.getter(name="impairedZoneHealthCheckBehavior") def impaired_zone_health_check_behavior(self) -> pulumi.Input['AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior']: """ - Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. """ return pulumi.get(self, "impaired_zone_health_check_behavior") @@ -314,7 +319,7 @@ def impaired_zone_health_check_behavior(self, value: pulumi.Input['AutoScalingGr @pulumi.getter(name="zonalShiftEnabled") def zonal_shift_enabled(self) -> pulumi.Input[bool]: """ - If `true` , enable zonal shift for your Auto Scaling group. + If ``true``, enable zonal shift for your Auto Scaling group. """ return pulumi.get(self, "zonal_shift_enabled") diff --git a/sdk/python/pulumi_aws_native/autoscaling/outputs.py b/sdk/python/pulumi_aws_native/autoscaling/outputs.py index a9731515f5..e4e3e9fffc 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/outputs.py +++ b/sdk/python/pulumi_aws_native/autoscaling/outputs.py @@ -141,6 +141,9 @@ def min(self) -> Optional[int]: @pulumi.output_type class AutoScalingGroupAvailabilityZoneDistribution(dict): + """ + ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -161,10 +164,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, capacity_distribution_strategy: Optional['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy'] = None): """ - :param 'AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy' capacity_distribution_strategy: If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - - - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + ``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. + :param 'AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy' capacity_distribution_strategy: If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. """ if capacity_distribution_strategy is not None: pulumi.set(__self__, "capacity_distribution_strategy", capacity_distribution_strategy) @@ -173,16 +176,18 @@ def __init__(__self__, *, @pulumi.getter(name="capacityDistributionStrategy") def capacity_distribution_strategy(self) -> Optional['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']: """ - If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . - - - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. - - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. + + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. """ return pulumi.get(self, "capacity_distribution_strategy") @pulumi.output_type class AutoScalingGroupAvailabilityZoneImpairmentPolicy(dict): + """ + Describes an Availability Zone impairment policy. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -206,8 +211,9 @@ def __init__(__self__, *, impaired_zone_health_check_behavior: 'AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior', zonal_shift_enabled: bool): """ - :param 'AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior' impaired_zone_health_check_behavior: Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . - :param bool zonal_shift_enabled: If `true` , enable zonal shift for your Auto Scaling group. + Describes an Availability Zone impairment policy. + :param 'AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior' impaired_zone_health_check_behavior: Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. + :param bool zonal_shift_enabled: If ``true``, enable zonal shift for your Auto Scaling group. """ pulumi.set(__self__, "impaired_zone_health_check_behavior", impaired_zone_health_check_behavior) pulumi.set(__self__, "zonal_shift_enabled", zonal_shift_enabled) @@ -216,7 +222,7 @@ def __init__(__self__, *, @pulumi.getter(name="impairedZoneHealthCheckBehavior") def impaired_zone_health_check_behavior(self) -> 'AutoScalingGroupAvailabilityZoneImpairmentPolicyImpairedZoneHealthCheckBehavior': """ - Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select `Replace unhealthy` , instances that appear unhealthy will be replaced in all Availability Zones. If you select `Ignore unhealthy` , instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide* . + Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the *Amazon EC2 Auto Scaling User Guide*. """ return pulumi.get(self, "impaired_zone_health_check_behavior") @@ -224,7 +230,7 @@ def impaired_zone_health_check_behavior(self) -> 'AutoScalingGroupAvailabilityZo @pulumi.getter(name="zonalShiftEnabled") def zonal_shift_enabled(self) -> bool: """ - If `true` , enable zonal shift for your Auto Scaling group. + If ``true``, enable zonal shift for your Auto Scaling group. """ return pulumi.get(self, "zonal_shift_enabled") diff --git a/sdk/python/pulumi_aws_native/batch/_inputs.py b/sdk/python/pulumi_aws_native/batch/_inputs.py index 444845b17e..efb61a284a 100644 --- a/sdk/python/pulumi_aws_native/batch/_inputs.py +++ b/sdk/python/pulumi_aws_native/batch/_inputs.py @@ -28,8 +28,8 @@ 'ComputeEnvironmentLaunchTemplateSpecificationArgsDict', 'ComputeEnvironmentUpdatePolicyArgs', 'ComputeEnvironmentUpdatePolicyArgsDict', - 'JobDefinitionAuthorizationConfigArgs', - 'JobDefinitionAuthorizationConfigArgsDict', + 'JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs', + 'JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgsDict', 'JobDefinitionContainerPropertiesArgs', 'JobDefinitionContainerPropertiesArgsDict', 'JobDefinitionDeviceArgs', @@ -38,6 +38,8 @@ 'JobDefinitionEcsPropertiesArgsDict', 'JobDefinitionEcsTaskPropertiesArgs', 'JobDefinitionEcsTaskPropertiesArgsDict', + 'JobDefinitionEfsAuthorizationConfigArgs', + 'JobDefinitionEfsAuthorizationConfigArgsDict', 'JobDefinitionEfsVolumeConfigurationArgs', 'JobDefinitionEfsVolumeConfigurationArgsDict', 'JobDefinitionEksContainerEnvironmentVariableArgs', @@ -54,6 +56,10 @@ 'JobDefinitionEksEmptyDirArgsDict', 'JobDefinitionEksHostPathArgs', 'JobDefinitionEksHostPathArgsDict', + 'JobDefinitionEksMetadataArgs', + 'JobDefinitionEksMetadataArgsDict', + 'JobDefinitionEksPodPropertiesArgs', + 'JobDefinitionEksPodPropertiesArgsDict', 'JobDefinitionEksPropertiesArgs', 'JobDefinitionEksPropertiesArgsDict', 'JobDefinitionEksSecretArgs', @@ -66,26 +72,30 @@ 'JobDefinitionEphemeralStorageArgsDict', 'JobDefinitionEvaluateOnExitArgs', 'JobDefinitionEvaluateOnExitArgsDict', - 'JobDefinitionFargatePlatformConfigurationArgs', - 'JobDefinitionFargatePlatformConfigurationArgsDict', + 'JobDefinitionHostArgs', + 'JobDefinitionHostArgsDict', 'JobDefinitionImagePullSecretArgs', 'JobDefinitionImagePullSecretArgsDict', + 'JobDefinitionJobTimeoutArgs', + 'JobDefinitionJobTimeoutArgsDict', 'JobDefinitionLinuxParametersArgs', 'JobDefinitionLinuxParametersArgsDict', 'JobDefinitionLogConfigurationArgs', 'JobDefinitionLogConfigurationArgsDict', - 'JobDefinitionMetadataArgs', - 'JobDefinitionMetadataArgsDict', - 'JobDefinitionMountPointsArgs', - 'JobDefinitionMountPointsArgsDict', + 'JobDefinitionMountPointArgs', + 'JobDefinitionMountPointArgsDict', + 'JobDefinitionMultiNodeContainerPropertiesArgs', + 'JobDefinitionMultiNodeContainerPropertiesArgsDict', + 'JobDefinitionMultiNodeEcsPropertiesArgs', + 'JobDefinitionMultiNodeEcsPropertiesArgsDict', + 'JobDefinitionMultiNodeEcsTaskPropertiesArgs', + 'JobDefinitionMultiNodeEcsTaskPropertiesArgsDict', 'JobDefinitionNetworkConfigurationArgs', 'JobDefinitionNetworkConfigurationArgsDict', 'JobDefinitionNodePropertiesArgs', 'JobDefinitionNodePropertiesArgsDict', 'JobDefinitionNodeRangePropertyArgs', 'JobDefinitionNodeRangePropertyArgsDict', - 'JobDefinitionPodPropertiesArgs', - 'JobDefinitionPodPropertiesArgsDict', 'JobDefinitionRepositoryCredentialsArgs', 'JobDefinitionRepositoryCredentialsArgsDict', 'JobDefinitionResourceRequirementArgs', @@ -100,16 +110,12 @@ 'JobDefinitionTaskContainerDependencyArgsDict', 'JobDefinitionTaskContainerPropertiesArgs', 'JobDefinitionTaskContainerPropertiesArgsDict', - 'JobDefinitionTimeoutArgs', - 'JobDefinitionTimeoutArgsDict', 'JobDefinitionTmpfsArgs', 'JobDefinitionTmpfsArgsDict', 'JobDefinitionUlimitArgs', 'JobDefinitionUlimitArgsDict', - 'JobDefinitionVolumesHostArgs', - 'JobDefinitionVolumesHostArgsDict', - 'JobDefinitionVolumesArgs', - 'JobDefinitionVolumesArgsDict', + 'JobDefinitionVolumeArgs', + 'JobDefinitionVolumeArgsDict', 'JobQueueComputeEnvironmentOrderArgs', 'JobQueueComputeEnvironmentOrderArgsDict', 'JobQueueJobStateTimeLimitActionArgs', @@ -1218,55 +1224,32 @@ def terminate_jobs_on_update(self, value: Optional[pulumi.Input[bool]]): if not MYPY: - class JobDefinitionAuthorizationConfigArgsDict(TypedDict): - access_point_id: NotRequired[pulumi.Input[str]] - """ - The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - """ - iam: NotRequired[pulumi.Input[str]] + class JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgsDict(TypedDict): """ - Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. """ + platform_version: NotRequired[pulumi.Input[str]] elif False: - JobDefinitionAuthorizationConfigArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionAuthorizationConfigArgs: +class JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs: def __init__(__self__, *, - access_point_id: Optional[pulumi.Input[str]] = None, - iam: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] access_point_id: The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - :param pulumi.Input[str] iam: Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - """ - if access_point_id is not None: - pulumi.set(__self__, "access_point_id", access_point_id) - if iam is not None: - pulumi.set(__self__, "iam", iam) - - @property - @pulumi.getter(name="accessPointId") - def access_point_id(self) -> Optional[pulumi.Input[str]]: + platform_version: Optional[pulumi.Input[str]] = None): """ - The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. """ - return pulumi.get(self, "access_point_id") - - @access_point_id.setter - def access_point_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "access_point_id", value) + if platform_version is not None: + pulumi.set(__self__, "platform_version", platform_version) @property - @pulumi.getter - def iam(self) -> Optional[pulumi.Input[str]]: - """ - Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - """ - return pulumi.get(self, "iam") + @pulumi.getter(name="platformVersion") + def platform_version(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "platform_version") - @iam.setter - def iam(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "iam", value) + @platform_version.setter + def platform_version(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "platform_version", value) if not MYPY: @@ -1301,16 +1284,10 @@ class JobDefinitionContainerPropertiesArgsDict(TypedDict): """ The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see [AWS Batch execution IAM role](https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) in the *AWS Batch User Guide* . """ - fargate_platform_configuration: NotRequired[pulumi.Input['JobDefinitionFargatePlatformConfigurationArgsDict']] + fargate_platform_configuration: NotRequired[pulumi.Input['JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgsDict']] """ The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. """ - instance_type: NotRequired[pulumi.Input[str]] - """ - The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - - > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - """ job_role_arn: NotRequired[pulumi.Input[str]] """ The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . @@ -1335,7 +1312,7 @@ class JobDefinitionContainerPropertiesArgsDict(TypedDict): """ This parameter is deprecated, use `resourceRequirements` to specify the memory requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it specifies the memory hard limit (in MiB) for a container. If your container attempts to exceed the specified number, it's terminated. You must specify at least 4 MiB of memory for a job using this parameter. The memory hard limit can be specified in several places. It must be specified for each node at least once. """ - mount_points: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgsDict']]]] + mount_points: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgsDict']]]] """ The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . """ @@ -1385,7 +1362,7 @@ class JobDefinitionContainerPropertiesArgsDict(TypedDict): Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to `CpuShares` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--cpu-shares` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The number of vCPUs must be specified but can be specified in several places. You must specify it at least once for each node. """ - volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgsDict']]]] + volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgsDict']]]] """ A list of data volumes used in a job. """ @@ -1400,13 +1377,12 @@ def __init__(__self__, *, environment: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEnvironmentArgs']]]] = None, ephemeral_storage: Optional[pulumi.Input['JobDefinitionEphemeralStorageArgs']] = None, execution_role_arn: Optional[pulumi.Input[str]] = None, - fargate_platform_configuration: Optional[pulumi.Input['JobDefinitionFargatePlatformConfigurationArgs']] = None, - instance_type: Optional[pulumi.Input[str]] = None, + fargate_platform_configuration: Optional[pulumi.Input['JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs']] = None, job_role_arn: Optional[pulumi.Input[str]] = None, linux_parameters: Optional[pulumi.Input['JobDefinitionLinuxParametersArgs']] = None, log_configuration: Optional[pulumi.Input['JobDefinitionLogConfigurationArgs']] = None, memory: Optional[pulumi.Input[int]] = None, - mount_points: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]]] = None, + mount_points: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]] = None, network_configuration: Optional[pulumi.Input['JobDefinitionNetworkConfigurationArgs']] = None, privileged: Optional[pulumi.Input[bool]] = None, readonly_root_filesystem: Optional[pulumi.Input[bool]] = None, @@ -1417,7 +1393,7 @@ def __init__(__self__, *, ulimits: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionUlimitArgs']]]] = None, user: Optional[pulumi.Input[str]] = None, vcpus: Optional[pulumi.Input[int]] = None, - volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]]] = None): + volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]] = None): """ :param pulumi.Input[str] image: Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . @@ -1434,10 +1410,7 @@ def __init__(__self__, *, > We don't recommend using plaintext environment variables for sensitive information, such as credential data. > Environment variables cannot start with " `AWS_BATCH` ". This naming convention is reserved for variables that AWS Batch sets. :param pulumi.Input['JobDefinitionEphemeralStorageArgs'] ephemeral_storage: The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate . :param pulumi.Input[str] execution_role_arn: The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see [AWS Batch execution IAM role](https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) in the *AWS Batch User Guide* . - :param pulumi.Input['JobDefinitionFargatePlatformConfigurationArgs'] fargate_platform_configuration: The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. - :param pulumi.Input[str] instance_type: The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - - > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. + :param pulumi.Input['JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs'] fargate_platform_configuration: The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. :param pulumi.Input[str] job_role_arn: The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . :param pulumi.Input['JobDefinitionLinuxParametersArgs'] linux_parameters: Linux-specific modifications that are applied to the container, such as details for device mappings. :param pulumi.Input['JobDefinitionLogConfigurationArgs'] log_configuration: The log configuration specification for the container. @@ -1450,7 +1423,7 @@ def __init__(__self__, *, > The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before containers placed on that instance can use these log configuration options. For more information, see [Amazon ECS container agent configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide* . :param pulumi.Input[int] memory: This parameter is deprecated, use `resourceRequirements` to specify the memory requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it specifies the memory hard limit (in MiB) for a container. If your container attempts to exceed the specified number, it's terminated. You must specify at least 4 MiB of memory for a job using this parameter. The memory hard limit can be specified in several places. It must be specified for each node at least once. - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]] mount_points: The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]] mount_points: The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . :param pulumi.Input['JobDefinitionNetworkConfigurationArgs'] network_configuration: The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. :param pulumi.Input[bool] privileged: When this parameter is true, the container is given elevated permissions on the host container instance (similar to the `root` user). This parameter maps to `Privileged` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--privileged` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The default value is false. @@ -1467,7 +1440,7 @@ def __init__(__self__, *, :param pulumi.Input[int] vcpus: This parameter is deprecated, use `resourceRequirements` to specify the vCPU requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs running on Amazon EC2 resources, it specifies the number of vCPUs reserved for the job. Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to `CpuShares` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--cpu-shares` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The number of vCPUs must be specified but can be specified in several places. You must specify it at least once for each node. - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]] volumes: A list of data volumes used in a job. + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]] volumes: A list of data volumes used in a job. """ pulumi.set(__self__, "image", image) if command is not None: @@ -1480,8 +1453,6 @@ def __init__(__self__, *, pulumi.set(__self__, "execution_role_arn", execution_role_arn) if fargate_platform_configuration is not None: pulumi.set(__self__, "fargate_platform_configuration", fargate_platform_configuration) - if instance_type is not None: - pulumi.set(__self__, "instance_type", instance_type) if job_role_arn is not None: pulumi.set(__self__, "job_role_arn", job_role_arn) if linux_parameters is not None: @@ -1587,30 +1558,16 @@ def execution_role_arn(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fargatePlatformConfiguration") - def fargate_platform_configuration(self) -> Optional[pulumi.Input['JobDefinitionFargatePlatformConfigurationArgs']]: + def fargate_platform_configuration(self) -> Optional[pulumi.Input['JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs']]: """ The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. """ return pulumi.get(self, "fargate_platform_configuration") @fargate_platform_configuration.setter - def fargate_platform_configuration(self, value: Optional[pulumi.Input['JobDefinitionFargatePlatformConfigurationArgs']]): + def fargate_platform_configuration(self, value: Optional[pulumi.Input['JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs']]): pulumi.set(self, "fargate_platform_configuration", value) - @property - @pulumi.getter(name="instanceType") - def instance_type(self) -> Optional[pulumi.Input[str]]: - """ - The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - - > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - """ - return pulumi.get(self, "instance_type") - - @instance_type.setter - def instance_type(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "instance_type", value) - @property @pulumi.getter(name="jobRoleArn") def job_role_arn(self) -> Optional[pulumi.Input[str]]: @@ -1669,14 +1626,14 @@ def memory(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="mountPoints") - def mount_points(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]]]: + def mount_points(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]]: """ The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . """ return pulumi.get(self, "mount_points") @mount_points.setter - def mount_points(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]]]): + def mount_points(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]]): pulumi.set(self, "mount_points", value) @property @@ -1807,14 +1764,14 @@ def vcpus(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter - def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]]]: + def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]: """ A list of data volumes used in a job. """ return pulumi.get(self, "volumes") @volumes.setter - def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]]]): + def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]): pulumi.set(self, "volumes", value) @@ -1981,7 +1938,7 @@ class JobDefinitionEcsTaskPropertiesArgsDict(TypedDict): > This is object is comparable to [ContainerProperties:jobRoleArn](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html) . """ - volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgsDict']]]] + volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgsDict']]]] """ A list of volumes that are associated with the job. """ @@ -2000,7 +1957,7 @@ def __init__(__self__, *, platform_version: Optional[pulumi.Input[str]] = None, runtime_platform: Optional[pulumi.Input['JobDefinitionRuntimePlatformArgs']] = None, task_role_arn: Optional[pulumi.Input[str]] = None, - volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]]] = None): + volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionTaskContainerPropertiesArgs']]] containers: This object is a list of containers. :param pulumi.Input['JobDefinitionEphemeralStorageArgs'] ephemeral_storage: The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate . @@ -2027,7 +1984,7 @@ def __init__(__self__, *, :param pulumi.Input[str] task_role_arn: The Amazon Resource Name (ARN) that's associated with the Amazon ECS task. > This is object is comparable to [ContainerProperties:jobRoleArn](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html) . - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]] volumes: A list of volumes that are associated with the job. + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]] volumes: A list of volumes that are associated with the job. """ if containers is not None: pulumi.set(__self__, "containers", containers) @@ -2176,24 +2133,76 @@ def task_role_arn(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]]]: + def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]: """ A list of volumes that are associated with the job. """ return pulumi.get(self, "volumes") @volumes.setter - def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumesArgs']]]]): + def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]): pulumi.set(self, "volumes", value) +if not MYPY: + class JobDefinitionEfsAuthorizationConfigArgsDict(TypedDict): + access_point_id: NotRequired[pulumi.Input[str]] + """ + The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + """ + iam: NotRequired[pulumi.Input[str]] + """ + Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + """ +elif False: + JobDefinitionEfsAuthorizationConfigArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class JobDefinitionEfsAuthorizationConfigArgs: + def __init__(__self__, *, + access_point_id: Optional[pulumi.Input[str]] = None, + iam: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] access_point_id: The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + :param pulumi.Input[str] iam: Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + """ + if access_point_id is not None: + pulumi.set(__self__, "access_point_id", access_point_id) + if iam is not None: + pulumi.set(__self__, "iam", iam) + + @property + @pulumi.getter(name="accessPointId") + def access_point_id(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + """ + return pulumi.get(self, "access_point_id") + + @access_point_id.setter + def access_point_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "access_point_id", value) + + @property + @pulumi.getter + def iam(self) -> Optional[pulumi.Input[str]]: + """ + Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + """ + return pulumi.get(self, "iam") + + @iam.setter + def iam(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "iam", value) + + if not MYPY: class JobDefinitionEfsVolumeConfigurationArgsDict(TypedDict): file_system_id: pulumi.Input[str] """ The Amazon EFS file system ID to use. """ - authorization_config: NotRequired[pulumi.Input['JobDefinitionAuthorizationConfigArgsDict']] + authorization_config: NotRequired[pulumi.Input['JobDefinitionEfsAuthorizationConfigArgsDict']] """ The authorization configuration details for the Amazon EFS file system. """ @@ -2218,13 +2227,13 @@ class JobDefinitionEfsVolumeConfigurationArgsDict(TypedDict): class JobDefinitionEfsVolumeConfigurationArgs: def __init__(__self__, *, file_system_id: pulumi.Input[str], - authorization_config: Optional[pulumi.Input['JobDefinitionAuthorizationConfigArgs']] = None, + authorization_config: Optional[pulumi.Input['JobDefinitionEfsAuthorizationConfigArgs']] = None, root_directory: Optional[pulumi.Input[str]] = None, transit_encryption: Optional[pulumi.Input[str]] = None, transit_encryption_port: Optional[pulumi.Input[int]] = None): """ :param pulumi.Input[str] file_system_id: The Amazon EFS file system ID to use. - :param pulumi.Input['JobDefinitionAuthorizationConfigArgs'] authorization_config: The authorization configuration details for the Amazon EFS file system. + :param pulumi.Input['JobDefinitionEfsAuthorizationConfigArgs'] authorization_config: The authorization configuration details for the Amazon EFS file system. :param pulumi.Input[str] root_directory: The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying `/` has the same effect as omitting this parameter. The maximum length is 4,096 characters. > If an EFS access point is specified in the `authorizationConfig` , the root directory parameter must either be omitted or set to `/` , which enforces the path set on the Amazon EFS access point. @@ -2255,14 +2264,14 @@ def file_system_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="authorizationConfig") - def authorization_config(self) -> Optional[pulumi.Input['JobDefinitionAuthorizationConfigArgs']]: + def authorization_config(self) -> Optional[pulumi.Input['JobDefinitionEfsAuthorizationConfigArgs']]: """ The authorization configuration details for the Amazon EFS file system. """ return pulumi.get(self, "authorization_config") @authorization_config.setter - def authorization_config(self, value: Optional[pulumi.Input['JobDefinitionAuthorizationConfigArgs']]): + def authorization_config(self, value: Optional[pulumi.Input['JobDefinitionEfsAuthorizationConfigArgs']]): pulumi.set(self, "authorization_config", value) @property @@ -2357,7 +2366,7 @@ def value(self, value: Optional[pulumi.Input[str]]): if not MYPY: class JobDefinitionEksContainerResourceRequirementsArgsDict(TypedDict): - limits: NotRequired[Any] + limits: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] """ The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. @@ -2367,7 +2376,7 @@ class JobDefinitionEksContainerResourceRequirementsArgsDict(TypedDict): - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . """ - requests: NotRequired[Any] + requests: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] """ The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. @@ -2383,17 +2392,17 @@ class JobDefinitionEksContainerResourceRequirementsArgsDict(TypedDict): @pulumi.input_type class JobDefinitionEksContainerResourceRequirementsArgs: def __init__(__self__, *, - limits: Optional[Any] = None, - requests: Optional[Any] = None): + limits: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + requests: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ - :param Any limits: The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] limits: The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. - **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a "Mi" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . > To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . - :param Any requests: The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] requests: The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. - **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a "Mi" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . @@ -2408,7 +2417,7 @@ def __init__(__self__, *, @property @pulumi.getter - def limits(self) -> Optional[Any]: + def limits(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. @@ -2421,12 +2430,12 @@ def limits(self) -> Optional[Any]: return pulumi.get(self, "limits") @limits.setter - def limits(self, value: Optional[Any]): + def limits(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): pulumi.set(self, "limits", value) @property @pulumi.getter - def requests(self) -> Optional[Any]: + def requests(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. @@ -2439,7 +2448,7 @@ def requests(self) -> Optional[Any]: return pulumi.get(self, "requests") @requests.setter - def requests(self, value: Optional[Any]): + def requests(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): pulumi.set(self, "requests", value) @@ -2950,414 +2959,383 @@ def path(self, value: Optional[pulumi.Input[str]]): if not MYPY: - class JobDefinitionEksPropertiesArgsDict(TypedDict): - pod_properties: NotRequired[pulumi.Input['JobDefinitionPodPropertiesArgsDict']] + class JobDefinitionEksMetadataArgsDict(TypedDict): + labels: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] """ - The properties for the Kubernetes pod resources of a job. + Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. """ elif False: - JobDefinitionEksPropertiesArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionEksMetadataArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionEksPropertiesArgs: +class JobDefinitionEksMetadataArgs: def __init__(__self__, *, - pod_properties: Optional[pulumi.Input['JobDefinitionPodPropertiesArgs']] = None): + labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ - :param pulumi.Input['JobDefinitionPodPropertiesArgs'] pod_properties: The properties for the Kubernetes pod resources of a job. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. """ - if pod_properties is not None: - pulumi.set(__self__, "pod_properties", pod_properties) + if labels is not None: + pulumi.set(__self__, "labels", labels) @property - @pulumi.getter(name="podProperties") - def pod_properties(self) -> Optional[pulumi.Input['JobDefinitionPodPropertiesArgs']]: + @pulumi.getter + def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ - The properties for the Kubernetes pod resources of a job. + Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. """ - return pulumi.get(self, "pod_properties") + return pulumi.get(self, "labels") - @pod_properties.setter - def pod_properties(self, value: Optional[pulumi.Input['JobDefinitionPodPropertiesArgs']]): - pulumi.set(self, "pod_properties", value) + @labels.setter + def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "labels", value) if not MYPY: - class JobDefinitionEksSecretArgsDict(TypedDict): - secret_name: pulumi.Input[str] - """ - The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + class JobDefinitionEksPodPropertiesArgsDict(TypedDict): + containers: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgsDict']]]] """ - optional: NotRequired[pulumi.Input[bool]] + The properties of the container that's used on the Amazon EKS pod. + + > This object is limited to 10 elements. """ - Specifies whether the secret or the secret's keys must be defined. + dns_policy: NotRequired[pulumi.Input[str]] """ -elif False: - JobDefinitionEksSecretArgsDict: TypeAlias = Mapping[str, Any] + The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . -@pulumi.input_type -class JobDefinitionEksSecretArgs: - def __init__(__self__, *, - secret_name: pulumi.Input[str], - optional: Optional[pulumi.Input[bool]] = None): + Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` """ - :param pulumi.Input[str] secret_name: The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . - :param pulumi.Input[bool] optional: Specifies whether the secret or the secret's keys must be defined. + host_network: NotRequired[pulumi.Input[bool]] """ - pulumi.set(__self__, "secret_name", secret_name) - if optional is not None: - pulumi.set(__self__, "optional", optional) - - @property - @pulumi.getter(name="secretName") - def secret_name(self) -> pulumi.Input[str]: + Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . """ - The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + image_pull_secrets: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgsDict']]]] """ - return pulumi.get(self, "secret_name") - - @secret_name.setter - def secret_name(self, value: pulumi.Input[str]): - pulumi.set(self, "secret_name", value) + References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. - @property - @pulumi.getter - def optional(self) -> Optional[pulumi.Input[bool]]: + `ImagePullSecret$name` is required when this object is used. """ - Specifies whether the secret or the secret's keys must be defined. + init_containers: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgsDict']]]] """ - return pulumi.get(self, "optional") - - @optional.setter - def optional(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "optional", value) - + These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . -if not MYPY: - class JobDefinitionEksVolumeArgsDict(TypedDict): - name: pulumi.Input[str] + > This object is limited to 10 elements. """ - The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + metadata: NotRequired[pulumi.Input['JobDefinitionEksMetadataArgsDict']] """ - empty_dir: NotRequired[pulumi.Input['JobDefinitionEksEmptyDirArgsDict']] + Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . """ - Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . + service_account_name: NotRequired[pulumi.Input[str]] """ - host_path: NotRequired[pulumi.Input['JobDefinitionEksHostPathArgsDict']] + The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . """ - Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . + share_process_namespace: NotRequired[pulumi.Input[bool]] """ - secret: NotRequired[pulumi.Input['JobDefinitionEksSecretArgsDict']] + Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . """ - Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . + volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgsDict']]]] + """ + Specifies the volumes for a job definition that uses Amazon EKS resources. """ elif False: - JobDefinitionEksVolumeArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionEksPodPropertiesArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionEksVolumeArgs: +class JobDefinitionEksPodPropertiesArgs: def __init__(__self__, *, - name: pulumi.Input[str], - empty_dir: Optional[pulumi.Input['JobDefinitionEksEmptyDirArgs']] = None, - host_path: Optional[pulumi.Input['JobDefinitionEksHostPathArgs']] = None, - secret: Optional[pulumi.Input['JobDefinitionEksSecretArgs']] = None): - """ - :param pulumi.Input[str] name: The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . - :param pulumi.Input['JobDefinitionEksEmptyDirArgs'] empty_dir: Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . - :param pulumi.Input['JobDefinitionEksHostPathArgs'] host_path: Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . - :param pulumi.Input['JobDefinitionEksSecretArgs'] secret: Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . - """ - pulumi.set(__self__, "name", name) - if empty_dir is not None: - pulumi.set(__self__, "empty_dir", empty_dir) - if host_path is not None: - pulumi.set(__self__, "host_path", host_path) - if secret is not None: - pulumi.set(__self__, "secret", secret) - - @property - @pulumi.getter - def name(self) -> pulumi.Input[str]: + containers: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]] = None, + dns_policy: Optional[pulumi.Input[str]] = None, + host_network: Optional[pulumi.Input[bool]] = None, + image_pull_secrets: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgs']]]] = None, + init_containers: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]] = None, + metadata: Optional[pulumi.Input['JobDefinitionEksMetadataArgs']] = None, + service_account_name: Optional[pulumi.Input[str]] = None, + share_process_namespace: Optional[pulumi.Input[bool]] = None, + volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]] = None): """ - The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]] containers: The properties of the container that's used on the Amazon EKS pod. + + > This object is limited to 10 elements. + :param pulumi.Input[str] dns_policy: The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + + Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` + :param pulumi.Input[bool] host_network: Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgs']]] image_pull_secrets: References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + + `ImagePullSecret$name` is required when this object is used. + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]] init_containers: These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + + > This object is limited to 10 elements. + :param pulumi.Input['JobDefinitionEksMetadataArgs'] metadata: Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + :param pulumi.Input[str] service_account_name: The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + :param pulumi.Input[bool] share_process_namespace: Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]] volumes: Specifies the volumes for a job definition that uses Amazon EKS resources. """ - return pulumi.get(self, "name") - - @name.setter - def name(self, value: pulumi.Input[str]): - pulumi.set(self, "name", value) - + if containers is not None: + pulumi.set(__self__, "containers", containers) + if dns_policy is not None: + pulumi.set(__self__, "dns_policy", dns_policy) + if host_network is not None: + pulumi.set(__self__, "host_network", host_network) + if image_pull_secrets is not None: + pulumi.set(__self__, "image_pull_secrets", image_pull_secrets) + if init_containers is not None: + pulumi.set(__self__, "init_containers", init_containers) + if metadata is not None: + pulumi.set(__self__, "metadata", metadata) + if service_account_name is not None: + pulumi.set(__self__, "service_account_name", service_account_name) + if share_process_namespace is not None: + pulumi.set(__self__, "share_process_namespace", share_process_namespace) + if volumes is not None: + pulumi.set(__self__, "volumes", volumes) + @property - @pulumi.getter(name="emptyDir") - def empty_dir(self) -> Optional[pulumi.Input['JobDefinitionEksEmptyDirArgs']]: + @pulumi.getter + def containers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]: """ - Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . + The properties of the container that's used on the Amazon EKS pod. + + > This object is limited to 10 elements. """ - return pulumi.get(self, "empty_dir") + return pulumi.get(self, "containers") - @empty_dir.setter - def empty_dir(self, value: Optional[pulumi.Input['JobDefinitionEksEmptyDirArgs']]): - pulumi.set(self, "empty_dir", value) + @containers.setter + def containers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]): + pulumi.set(self, "containers", value) @property - @pulumi.getter(name="hostPath") - def host_path(self) -> Optional[pulumi.Input['JobDefinitionEksHostPathArgs']]: + @pulumi.getter(name="dnsPolicy") + def dns_policy(self) -> Optional[pulumi.Input[str]]: """ - Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . + The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + + Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` """ - return pulumi.get(self, "host_path") + return pulumi.get(self, "dns_policy") - @host_path.setter - def host_path(self, value: Optional[pulumi.Input['JobDefinitionEksHostPathArgs']]): - pulumi.set(self, "host_path", value) + @dns_policy.setter + def dns_policy(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "dns_policy", value) @property - @pulumi.getter - def secret(self) -> Optional[pulumi.Input['JobDefinitionEksSecretArgs']]: + @pulumi.getter(name="hostNetwork") + def host_network(self) -> Optional[pulumi.Input[bool]]: """ - Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . + Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . """ - return pulumi.get(self, "secret") + return pulumi.get(self, "host_network") - @secret.setter - def secret(self, value: Optional[pulumi.Input['JobDefinitionEksSecretArgs']]): - pulumi.set(self, "secret", value) + @host_network.setter + def host_network(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "host_network", value) + @property + @pulumi.getter(name="imagePullSecrets") + def image_pull_secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgs']]]]: + """ + References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. -if not MYPY: - class JobDefinitionEnvironmentArgsDict(TypedDict): - name: NotRequired[pulumi.Input[str]] + `ImagePullSecret$name` is required when this object is used. """ - The name of the environment variable. + return pulumi.get(self, "image_pull_secrets") + + @image_pull_secrets.setter + def image_pull_secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgs']]]]): + pulumi.set(self, "image_pull_secrets", value) + + @property + @pulumi.getter(name="initContainers") + def init_containers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]: """ - value: NotRequired[pulumi.Input[str]] + These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + + > This object is limited to 10 elements. """ - The value of the environment variable. + return pulumi.get(self, "init_containers") + + @init_containers.setter + def init_containers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]): + pulumi.set(self, "init_containers", value) + + @property + @pulumi.getter + def metadata(self) -> Optional[pulumi.Input['JobDefinitionEksMetadataArgs']]: """ -elif False: - JobDefinitionEnvironmentArgsDict: TypeAlias = Mapping[str, Any] + Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + """ + return pulumi.get(self, "metadata") -@pulumi.input_type -class JobDefinitionEnvironmentArgs: - def __init__(__self__, *, - name: Optional[pulumi.Input[str]] = None, - value: Optional[pulumi.Input[str]] = None): + @metadata.setter + def metadata(self, value: Optional[pulumi.Input['JobDefinitionEksMetadataArgs']]): + pulumi.set(self, "metadata", value) + + @property + @pulumi.getter(name="serviceAccountName") + def service_account_name(self) -> Optional[pulumi.Input[str]]: """ - :param pulumi.Input[str] name: The name of the environment variable. - :param pulumi.Input[str] value: The value of the environment variable. + The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . """ - if name is not None: - pulumi.set(__self__, "name", name) - if value is not None: - pulumi.set(__self__, "value", value) + return pulumi.get(self, "service_account_name") + + @service_account_name.setter + def service_account_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "service_account_name", value) @property - @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter(name="shareProcessNamespace") + def share_process_namespace(self) -> Optional[pulumi.Input[bool]]: """ - The name of the environment variable. + Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . """ - return pulumi.get(self, "name") + return pulumi.get(self, "share_process_namespace") - @name.setter - def name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "name", value) + @share_process_namespace.setter + def share_process_namespace(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "share_process_namespace", value) @property @pulumi.getter - def value(self) -> Optional[pulumi.Input[str]]: + def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]: """ - The value of the environment variable. + Specifies the volumes for a job definition that uses Amazon EKS resources. """ - return pulumi.get(self, "value") + return pulumi.get(self, "volumes") - @value.setter - def value(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "value", value) + @volumes.setter + def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]): + pulumi.set(self, "volumes", value) if not MYPY: - class JobDefinitionEphemeralStorageArgsDict(TypedDict): - size_in_gi_b: pulumi.Input[int] + class JobDefinitionEksPropertiesArgsDict(TypedDict): + pod_properties: NotRequired[pulumi.Input['JobDefinitionEksPodPropertiesArgsDict']] """ - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. + The properties for the Kubernetes pod resources of a job. """ elif False: - JobDefinitionEphemeralStorageArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionEksPropertiesArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionEphemeralStorageArgs: +class JobDefinitionEksPropertiesArgs: def __init__(__self__, *, - size_in_gi_b: pulumi.Input[int]): + pod_properties: Optional[pulumi.Input['JobDefinitionEksPodPropertiesArgs']] = None): """ - :param pulumi.Input[int] size_in_gi_b: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. + :param pulumi.Input['JobDefinitionEksPodPropertiesArgs'] pod_properties: The properties for the Kubernetes pod resources of a job. """ - pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) + if pod_properties is not None: + pulumi.set(__self__, "pod_properties", pod_properties) @property - @pulumi.getter(name="sizeInGiB") - def size_in_gi_b(self) -> pulumi.Input[int]: + @pulumi.getter(name="podProperties") + def pod_properties(self) -> Optional[pulumi.Input['JobDefinitionEksPodPropertiesArgs']]: """ - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. + The properties for the Kubernetes pod resources of a job. """ - return pulumi.get(self, "size_in_gi_b") + return pulumi.get(self, "pod_properties") - @size_in_gi_b.setter - def size_in_gi_b(self, value: pulumi.Input[int]): - pulumi.set(self, "size_in_gi_b", value) + @pod_properties.setter + def pod_properties(self, value: Optional[pulumi.Input['JobDefinitionEksPodPropertiesArgs']]): + pulumi.set(self, "pod_properties", value) if not MYPY: - class JobDefinitionEvaluateOnExitArgsDict(TypedDict): - action: pulumi.Input[str] - """ - Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. - """ - on_exit_code: NotRequired[pulumi.Input[str]] - """ - Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - - The string can contain up to 512 characters. - """ - on_reason: NotRequired[pulumi.Input[str]] + class JobDefinitionEksSecretArgsDict(TypedDict): + secret_name: pulumi.Input[str] """ - Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . """ - on_status_reason: NotRequired[pulumi.Input[str]] + optional: NotRequired[pulumi.Input[bool]] """ - Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + Specifies whether the secret or the secret's keys must be defined. """ elif False: - JobDefinitionEvaluateOnExitArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionEksSecretArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionEvaluateOnExitArgs: +class JobDefinitionEksSecretArgs: def __init__(__self__, *, - action: pulumi.Input[str], - on_exit_code: Optional[pulumi.Input[str]] = None, - on_reason: Optional[pulumi.Input[str]] = None, - on_status_reason: Optional[pulumi.Input[str]] = None): + secret_name: pulumi.Input[str], + optional: Optional[pulumi.Input[bool]] = None): """ - :param pulumi.Input[str] action: Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. - :param pulumi.Input[str] on_exit_code: Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - - The string can contain up to 512 characters. - :param pulumi.Input[str] on_reason: Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. - :param pulumi.Input[str] on_status_reason: Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + :param pulumi.Input[str] secret_name: The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + :param pulumi.Input[bool] optional: Specifies whether the secret or the secret's keys must be defined. """ - pulumi.set(__self__, "action", action) - if on_exit_code is not None: - pulumi.set(__self__, "on_exit_code", on_exit_code) - if on_reason is not None: - pulumi.set(__self__, "on_reason", on_reason) - if on_status_reason is not None: - pulumi.set(__self__, "on_status_reason", on_status_reason) + pulumi.set(__self__, "secret_name", secret_name) + if optional is not None: + pulumi.set(__self__, "optional", optional) @property - @pulumi.getter - def action(self) -> pulumi.Input[str]: + @pulumi.getter(name="secretName") + def secret_name(self) -> pulumi.Input[str]: """ - Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. + The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . """ - return pulumi.get(self, "action") + return pulumi.get(self, "secret_name") - @action.setter - def action(self, value: pulumi.Input[str]): - pulumi.set(self, "action", value) + @secret_name.setter + def secret_name(self, value: pulumi.Input[str]): + pulumi.set(self, "secret_name", value) @property - @pulumi.getter(name="onExitCode") - def on_exit_code(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter + def optional(self) -> Optional[pulumi.Input[bool]]: """ - Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - - The string can contain up to 512 characters. + Specifies whether the secret or the secret's keys must be defined. """ - return pulumi.get(self, "on_exit_code") + return pulumi.get(self, "optional") - @on_exit_code.setter - def on_exit_code(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "on_exit_code", value) - - @property - @pulumi.getter(name="onReason") - def on_reason(self) -> Optional[pulumi.Input[str]]: - """ - Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. - """ - return pulumi.get(self, "on_reason") - - @on_reason.setter - def on_reason(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "on_reason", value) - - @property - @pulumi.getter(name="onStatusReason") - def on_status_reason(self) -> Optional[pulumi.Input[str]]: - """ - Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. - """ - return pulumi.get(self, "on_status_reason") - - @on_status_reason.setter - def on_status_reason(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "on_status_reason", value) + @optional.setter + def optional(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "optional", value) if not MYPY: - class JobDefinitionFargatePlatformConfigurationArgsDict(TypedDict): - platform_version: NotRequired[pulumi.Input[str]] + class JobDefinitionEksVolumeArgsDict(TypedDict): + name: pulumi.Input[str] """ - The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . + The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . """ -elif False: - JobDefinitionFargatePlatformConfigurationArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class JobDefinitionFargatePlatformConfigurationArgs: - def __init__(__self__, *, - platform_version: Optional[pulumi.Input[str]] = None): + empty_dir: NotRequired[pulumi.Input['JobDefinitionEksEmptyDirArgsDict']] """ - :param pulumi.Input[str] platform_version: The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . + Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . """ - if platform_version is not None: - pulumi.set(__self__, "platform_version", platform_version) - - @property - @pulumi.getter(name="platformVersion") - def platform_version(self) -> Optional[pulumi.Input[str]]: + host_path: NotRequired[pulumi.Input['JobDefinitionEksHostPathArgsDict']] """ - The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . + Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . """ - return pulumi.get(self, "platform_version") - - @platform_version.setter - def platform_version(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "platform_version", value) - - -if not MYPY: - class JobDefinitionImagePullSecretArgsDict(TypedDict): - name: pulumi.Input[str] + secret: NotRequired[pulumi.Input['JobDefinitionEksSecretArgsDict']] """ - Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. + Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . """ elif False: - JobDefinitionImagePullSecretArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionEksVolumeArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionImagePullSecretArgs: +class JobDefinitionEksVolumeArgs: def __init__(__self__, *, - name: pulumi.Input[str]): + name: pulumi.Input[str], + empty_dir: Optional[pulumi.Input['JobDefinitionEksEmptyDirArgs']] = None, + host_path: Optional[pulumi.Input['JobDefinitionEksHostPathArgs']] = None, + secret: Optional[pulumi.Input['JobDefinitionEksSecretArgs']] = None): """ - :param pulumi.Input[str] name: Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. + :param pulumi.Input[str] name: The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + :param pulumi.Input['JobDefinitionEksEmptyDirArgs'] empty_dir: Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . + :param pulumi.Input['JobDefinitionEksHostPathArgs'] host_path: Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . + :param pulumi.Input['JobDefinitionEksSecretArgs'] secret: Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . """ pulumi.set(__self__, "name", name) + if empty_dir is not None: + pulumi.set(__self__, "empty_dir", empty_dir) + if host_path is not None: + pulumi.set(__self__, "host_path", host_path) + if secret is not None: + pulumi.set(__self__, "secret", secret) @property @pulumi.getter def name(self) -> pulumi.Input[str]: """ - Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. + The name of the volume. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . """ return pulumi.get(self, "name") @@ -3365,420 +3343,1110 @@ def name(self) -> pulumi.Input[str]: def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) - -if not MYPY: - class JobDefinitionLinuxParametersArgsDict(TypedDict): - devices: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgsDict']]]] - """ - Any of the host devices to expose to the container. This parameter maps to `Devices` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--device` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. - """ - init_process_enabled: NotRequired[pulumi.Input[bool]] - """ - If true, run an `init` process inside the container that forwards signals and reaps processes. This parameter maps to the `--init` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + @property + @pulumi.getter(name="emptyDir") + def empty_dir(self) -> Optional[pulumi.Input['JobDefinitionEksEmptyDirArgs']]: """ - max_swap: NotRequired[pulumi.Input[int]] + Specifies the configuration of a Kubernetes `emptyDir` volume. For more information, see [emptyDir](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) in the *Kubernetes documentation* . """ - The total amount of swap memory (in MiB) a container can use. This parameter is translated to the `--memory-swap` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) where the value is the sum of the container memory plus the `maxSwap` value. For more information, see [`--memory-swap` details](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) in the Docker documentation. + return pulumi.get(self, "empty_dir") - If a `maxSwap` value of `0` is specified, the container doesn't use swap. Accepted values are `0` or any positive integer. If the `maxSwap` parameter is omitted, the container doesn't use the swap configuration for the container instance that it's running on. A `maxSwap` value must be set for the `swappiness` parameter to be used. + @empty_dir.setter + def empty_dir(self, value: Optional[pulumi.Input['JobDefinitionEksEmptyDirArgs']]): + pulumi.set(self, "empty_dir", value) - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + @property + @pulumi.getter(name="hostPath") + def host_path(self) -> Optional[pulumi.Input['JobDefinitionEksHostPathArgs']]: """ - shared_memory_size: NotRequired[pulumi.Input[int]] + Specifies the configuration of a Kubernetes `hostPath` volume. For more information, see [hostPath](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#hostpath) in the *Kubernetes documentation* . """ - The value for the size (in MiB) of the `/dev/shm` volume. This parameter maps to the `--shm-size` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + return pulumi.get(self, "host_path") - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + @host_path.setter + def host_path(self, value: Optional[pulumi.Input['JobDefinitionEksHostPathArgs']]): + pulumi.set(self, "host_path", value) + + @property + @pulumi.getter + def secret(self) -> Optional[pulumi.Input['JobDefinitionEksSecretArgs']]: """ - swappiness: NotRequired[pulumi.Input[int]] + Specifies the configuration of a Kubernetes `secret` volume. For more information, see [secret](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/storage/volumes/#secret) in the *Kubernetes documentation* . """ - You can use this parameter to tune a container's memory swappiness behavior. A `swappiness` value of `0` causes swapping to not occur unless absolutely necessary. A `swappiness` value of `100` causes pages to be swapped aggressively. Valid values are whole numbers between `0` and `100` . If the `swappiness` parameter isn't specified, a default value of `60` is used. If a value isn't specified for `maxSwap` , then this parameter is ignored. If `maxSwap` is set to 0, the container doesn't use swap. This parameter maps to the `--memory-swappiness` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - Consider the following when you use a per-container swap configuration. + return pulumi.get(self, "secret") - - Swap space must be enabled and allocated on the container instance for the containers to use. + @secret.setter + def secret(self, value: Optional[pulumi.Input['JobDefinitionEksSecretArgs']]): + pulumi.set(self, "secret", value) - > By default, the Amazon ECS optimized AMIs don't have swap enabled. You must enable swap on the instance to use this feature. For more information, see [Instance store swap volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-swap-volumes.html) in the *Amazon EC2 User Guide for Linux Instances* or [How do I allocate memory to work as swap space in an Amazon EC2 instance by using a swap file?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/) - - The swap space parameters are only supported for job definitions using EC2 resources. - - If the `maxSwap` and `swappiness` parameters are omitted from a job definition, each container has a default `swappiness` value of 60. Moreover, the total swap usage is limited to two times the memory reservation of the container. - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. +if not MYPY: + class JobDefinitionEnvironmentArgsDict(TypedDict): + name: NotRequired[pulumi.Input[str]] """ - tmpfs: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgsDict']]]] + The name of the environment variable. """ - The container path, mount options, and size (in MiB) of the `tmpfs` mount. This parameter maps to the `--tmpfs` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide this parameter for this resource type. + value: NotRequired[pulumi.Input[str]] + """ + The value of the environment variable. """ elif False: - JobDefinitionLinuxParametersArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionEnvironmentArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionLinuxParametersArgs: +class JobDefinitionEnvironmentArgs: def __init__(__self__, *, - devices: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]]] = None, - init_process_enabled: Optional[pulumi.Input[bool]] = None, - max_swap: Optional[pulumi.Input[int]] = None, - shared_memory_size: Optional[pulumi.Input[int]] = None, - swappiness: Optional[pulumi.Input[int]] = None, - tmpfs: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]] = None): + name: Optional[pulumi.Input[str]] = None, + value: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]] devices: Any of the host devices to expose to the container. This parameter maps to `Devices` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--device` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. - :param pulumi.Input[bool] init_process_enabled: If true, run an `init` process inside the container that forwards signals and reaps processes. This parameter maps to the `--init` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` - :param pulumi.Input[int] max_swap: The total amount of swap memory (in MiB) a container can use. This parameter is translated to the `--memory-swap` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) where the value is the sum of the container memory plus the `maxSwap` value. For more information, see [`--memory-swap` details](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) in the Docker documentation. - - If a `maxSwap` value of `0` is specified, the container doesn't use swap. Accepted values are `0` or any positive integer. If the `maxSwap` parameter is omitted, the container doesn't use the swap configuration for the container instance that it's running on. A `maxSwap` value must be set for the `swappiness` parameter to be used. - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. - :param pulumi.Input[int] shared_memory_size: The value for the size (in MiB) of the `/dev/shm` volume. This parameter maps to the `--shm-size` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. - :param pulumi.Input[int] swappiness: You can use this parameter to tune a container's memory swappiness behavior. A `swappiness` value of `0` causes swapping to not occur unless absolutely necessary. A `swappiness` value of `100` causes pages to be swapped aggressively. Valid values are whole numbers between `0` and `100` . If the `swappiness` parameter isn't specified, a default value of `60` is used. If a value isn't specified for `maxSwap` , then this parameter is ignored. If `maxSwap` is set to 0, the container doesn't use swap. This parameter maps to the `--memory-swappiness` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - Consider the following when you use a per-container swap configuration. - - - Swap space must be enabled and allocated on the container instance for the containers to use. - - > By default, the Amazon ECS optimized AMIs don't have swap enabled. You must enable swap on the instance to use this feature. For more information, see [Instance store swap volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-swap-volumes.html) in the *Amazon EC2 User Guide for Linux Instances* or [How do I allocate memory to work as swap space in an Amazon EC2 instance by using a swap file?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/) - - The swap space parameters are only supported for job definitions using EC2 resources. - - If the `maxSwap` and `swappiness` parameters are omitted from a job definition, each container has a default `swappiness` value of 60. Moreover, the total swap usage is limited to two times the memory reservation of the container. - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]] tmpfs: The container path, mount options, and size (in MiB) of the `tmpfs` mount. This parameter maps to the `--tmpfs` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide this parameter for this resource type. + :param pulumi.Input[str] name: The name of the environment variable. + :param pulumi.Input[str] value: The value of the environment variable. """ - if devices is not None: - pulumi.set(__self__, "devices", devices) - if init_process_enabled is not None: - pulumi.set(__self__, "init_process_enabled", init_process_enabled) - if max_swap is not None: - pulumi.set(__self__, "max_swap", max_swap) - if shared_memory_size is not None: - pulumi.set(__self__, "shared_memory_size", shared_memory_size) - if swappiness is not None: - pulumi.set(__self__, "swappiness", swappiness) - if tmpfs is not None: - pulumi.set(__self__, "tmpfs", tmpfs) + if name is not None: + pulumi.set(__self__, "name", name) + if value is not None: + pulumi.set(__self__, "value", value) @property @pulumi.getter - def devices(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]]]: + def name(self) -> Optional[pulumi.Input[str]]: """ - Any of the host devices to expose to the container. This parameter maps to `Devices` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--device` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + The name of the environment variable. """ - return pulumi.get(self, "devices") + return pulumi.get(self, "name") - @devices.setter - def devices(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]]]): - pulumi.set(self, "devices", value) + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) @property - @pulumi.getter(name="initProcessEnabled") - def init_process_enabled(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter + def value(self) -> Optional[pulumi.Input[str]]: """ - If true, run an `init` process inside the container that forwards signals and reaps processes. This parameter maps to the `--init` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + The value of the environment variable. """ - return pulumi.get(self, "init_process_enabled") - - @init_process_enabled.setter - def init_process_enabled(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "init_process_enabled", value) + return pulumi.get(self, "value") - @property - @pulumi.getter(name="maxSwap") - def max_swap(self) -> Optional[pulumi.Input[int]]: - """ - The total amount of swap memory (in MiB) a container can use. This parameter is translated to the `--memory-swap` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) where the value is the sum of the container memory plus the `maxSwap` value. For more information, see [`--memory-swap` details](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) in the Docker documentation. + @value.setter + def value(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "value", value) - If a `maxSwap` value of `0` is specified, the container doesn't use swap. Accepted values are `0` or any positive integer. If the `maxSwap` parameter is omitted, the container doesn't use the swap configuration for the container instance that it's running on. A `maxSwap` value must be set for the `swappiness` parameter to be used. - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. +if not MYPY: + class JobDefinitionEphemeralStorageArgsDict(TypedDict): + size_in_gi_b: pulumi.Input[int] """ - return pulumi.get(self, "max_swap") - - @max_swap.setter - def max_swap(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "max_swap", value) - - @property - @pulumi.getter(name="sharedMemorySize") - def shared_memory_size(self) -> Optional[pulumi.Input[int]]: + The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. """ - The value for the size (in MiB) of the `/dev/shm` volume. This parameter maps to the `--shm-size` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . +elif False: + JobDefinitionEphemeralStorageArgsDict: TypeAlias = Mapping[str, Any] - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. +@pulumi.input_type +class JobDefinitionEphemeralStorageArgs: + def __init__(__self__, *, + size_in_gi_b: pulumi.Input[int]): """ - return pulumi.get(self, "shared_memory_size") - - @shared_memory_size.setter - def shared_memory_size(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "shared_memory_size", value) - - @property - @pulumi.getter - def swappiness(self) -> Optional[pulumi.Input[int]]: - """ - You can use this parameter to tune a container's memory swappiness behavior. A `swappiness` value of `0` causes swapping to not occur unless absolutely necessary. A `swappiness` value of `100` causes pages to be swapped aggressively. Valid values are whole numbers between `0` and `100` . If the `swappiness` parameter isn't specified, a default value of `60` is used. If a value isn't specified for `maxSwap` , then this parameter is ignored. If `maxSwap` is set to 0, the container doesn't use swap. This parameter maps to the `--memory-swappiness` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - Consider the following when you use a per-container swap configuration. - - - Swap space must be enabled and allocated on the container instance for the containers to use. - - > By default, the Amazon ECS optimized AMIs don't have swap enabled. You must enable swap on the instance to use this feature. For more information, see [Instance store swap volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-swap-volumes.html) in the *Amazon EC2 User Guide for Linux Instances* or [How do I allocate memory to work as swap space in an Amazon EC2 instance by using a swap file?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/) - - The swap space parameters are only supported for job definitions using EC2 resources. - - If the `maxSwap` and `swappiness` parameters are omitted from a job definition, each container has a default `swappiness` value of 60. Moreover, the total swap usage is limited to two times the memory reservation of the container. - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. - """ - return pulumi.get(self, "swappiness") - - @swappiness.setter - def swappiness(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "swappiness", value) + :param pulumi.Input[int] size_in_gi_b: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. + """ + pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) @property - @pulumi.getter - def tmpfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]]: + @pulumi.getter(name="sizeInGiB") + def size_in_gi_b(self) -> pulumi.Input[int]: """ - The container path, mount options, and size (in MiB) of the `tmpfs` mount. This parameter maps to the `--tmpfs` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . - - > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide this parameter for this resource type. + The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is `21` GiB and the maximum supported value is `200` GiB. """ - return pulumi.get(self, "tmpfs") + return pulumi.get(self, "size_in_gi_b") - @tmpfs.setter - def tmpfs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]]): - pulumi.set(self, "tmpfs", value) + @size_in_gi_b.setter + def size_in_gi_b(self, value: pulumi.Input[int]): + pulumi.set(self, "size_in_gi_b", value) if not MYPY: - class JobDefinitionLogConfigurationArgsDict(TypedDict): - log_driver: pulumi.Input[str] + class JobDefinitionEvaluateOnExitArgsDict(TypedDict): + action: pulumi.Input[str] """ - The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. - - The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . - - > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. - - - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. - - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . - - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . - - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . - - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . - - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . - - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . - - > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. + Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. + """ + on_exit_code: NotRequired[pulumi.Input[str]] + """ + Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + The string can contain up to 512 characters. """ - options: NotRequired[Any] + on_reason: NotRequired[pulumi.Input[str]] """ - The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. """ - secret_options: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgsDict']]]] + on_status_reason: NotRequired[pulumi.Input[str]] """ - The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . + Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. """ elif False: - JobDefinitionLogConfigurationArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionEvaluateOnExitArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionLogConfigurationArgs: +class JobDefinitionEvaluateOnExitArgs: def __init__(__self__, *, - log_driver: pulumi.Input[str], - options: Optional[Any] = None, - secret_options: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]] = None): + action: pulumi.Input[str], + on_exit_code: Optional[pulumi.Input[str]] = None, + on_reason: Optional[pulumi.Input[str]] = None, + on_status_reason: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] log_driver: The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. - - The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . - - > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. - - - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. - - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . - - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . - - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . - - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . - - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . - - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . - - > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. + :param pulumi.Input[str] action: Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. + :param pulumi.Input[str] on_exit_code: Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` - :param Any options: The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]] secret_options: The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . + The string can contain up to 512 characters. + :param pulumi.Input[str] on_reason: Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. + :param pulumi.Input[str] on_status_reason: Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. """ - pulumi.set(__self__, "log_driver", log_driver) - if options is not None: - pulumi.set(__self__, "options", options) - if secret_options is not None: - pulumi.set(__self__, "secret_options", secret_options) + pulumi.set(__self__, "action", action) + if on_exit_code is not None: + pulumi.set(__self__, "on_exit_code", on_exit_code) + if on_reason is not None: + pulumi.set(__self__, "on_reason", on_reason) + if on_status_reason is not None: + pulumi.set(__self__, "on_status_reason", on_status_reason) @property - @pulumi.getter(name="logDriver") - def log_driver(self) -> pulumi.Input[str]: + @pulumi.getter + def action(self) -> pulumi.Input[str]: """ - The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. - - The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . - - > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. + Specifies the action to take if all of the specified conditions ( `onStatusReason` , `onReason` , and `onExitCode` ) are met. The values aren't case sensitive. + """ + return pulumi.get(self, "action") - - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. - - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . - - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . - - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . - - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . - - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . - - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . + @action.setter + def action(self, value: pulumi.Input[str]): + pulumi.set(self, "action", value) - > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. + @property + @pulumi.getter(name="onExitCode") + def on_exit_code(self) -> Optional[pulumi.Input[str]]: + """ + Contains a glob pattern to match against the decimal representation of the `ExitCode` returned for a job. The pattern can be up to 512 characters long. It can contain only numbers, and can end with an asterisk (*) so that only the start of the string needs to be an exact match. - This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + The string can contain up to 512 characters. """ - return pulumi.get(self, "log_driver") + return pulumi.get(self, "on_exit_code") - @log_driver.setter - def log_driver(self, value: pulumi.Input[str]): - pulumi.set(self, "log_driver", value) + @on_exit_code.setter + def on_exit_code(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "on_exit_code", value) @property - @pulumi.getter - def options(self) -> Optional[Any]: + @pulumi.getter(name="onReason") + def on_reason(self) -> Optional[pulumi.Input[str]]: """ - The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + Contains a glob pattern to match against the `Reason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white space (including spaces and tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. """ - return pulumi.get(self, "options") + return pulumi.get(self, "on_reason") - @options.setter - def options(self, value: Optional[Any]): - pulumi.set(self, "options", value) + @on_reason.setter + def on_reason(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "on_reason", value) @property - @pulumi.getter(name="secretOptions") - def secret_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]: + @pulumi.getter(name="onStatusReason") + def on_status_reason(self) -> Optional[pulumi.Input[str]]: """ - The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . + Contains a glob pattern to match against the `StatusReason` returned for a job. The pattern can contain up to 512 characters. It can contain letters, numbers, periods (.), colons (:), and white spaces (including spaces or tabs). It can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match. """ - return pulumi.get(self, "secret_options") + return pulumi.get(self, "on_status_reason") - @secret_options.setter - def secret_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]): - pulumi.set(self, "secret_options", value) + @on_status_reason.setter + def on_status_reason(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "on_status_reason", value) if not MYPY: - class JobDefinitionMetadataArgsDict(TypedDict): - labels: NotRequired[Any] + class JobDefinitionHostArgsDict(TypedDict): + source_path: NotRequired[pulumi.Input[str]] """ - Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. + The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + + > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. """ elif False: - JobDefinitionMetadataArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionHostArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionMetadataArgs: +class JobDefinitionHostArgs: def __init__(__self__, *, - labels: Optional[Any] = None): + source_path: Optional[pulumi.Input[str]] = None): """ - :param Any labels: Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. + :param pulumi.Input[str] source_path: The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + + > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. """ - if labels is not None: - pulumi.set(__self__, "labels", labels) + if source_path is not None: + pulumi.set(__self__, "source_path", source_path) @property - @pulumi.getter - def labels(self) -> Optional[Any]: + @pulumi.getter(name="sourcePath") + def source_path(self) -> Optional[pulumi.Input[str]]: """ - Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. + The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + + > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. """ - return pulumi.get(self, "labels") + return pulumi.get(self, "source_path") - @labels.setter - def labels(self, value: Optional[Any]): - pulumi.set(self, "labels", value) + @source_path.setter + def source_path(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_path", value) if not MYPY: - class JobDefinitionMountPointsArgsDict(TypedDict): - container_path: NotRequired[pulumi.Input[str]] - """ - The path on the container where the host volume is mounted. - """ - read_only: NotRequired[pulumi.Input[bool]] - """ - If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . - """ - source_volume: NotRequired[pulumi.Input[str]] + class JobDefinitionImagePullSecretArgsDict(TypedDict): + name: NotRequired[pulumi.Input[str]] """ - The name of the volume to mount. + Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. """ elif False: - JobDefinitionMountPointsArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionImagePullSecretArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionMountPointsArgs: +class JobDefinitionImagePullSecretArgs: def __init__(__self__, *, - container_path: Optional[pulumi.Input[str]] = None, - read_only: Optional[pulumi.Input[bool]] = None, - source_volume: Optional[pulumi.Input[str]] = None): + name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] container_path: The path on the container where the host volume is mounted. - :param pulumi.Input[bool] read_only: If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . - :param pulumi.Input[str] source_volume: The name of the volume to mount. + :param pulumi.Input[str] name: Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. """ - if container_path is not None: - pulumi.set(__self__, "container_path", container_path) - if read_only is not None: - pulumi.set(__self__, "read_only", read_only) - if source_volume is not None: - pulumi.set(__self__, "source_volume", source_volume) + if name is not None: + pulumi.set(__self__, "name", name) @property - @pulumi.getter(name="containerPath") - def container_path(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: """ - The path on the container where the host volume is mounted. + Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. """ - return pulumi.get(self, "container_path") + return pulumi.get(self, "name") - @container_path.setter - def container_path(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "container_path", value) + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) - @property - @pulumi.getter(name="readOnly") - def read_only(self) -> Optional[pulumi.Input[bool]]: + +if not MYPY: + class JobDefinitionJobTimeoutArgsDict(TypedDict): + attempt_duration_seconds: NotRequired[pulumi.Input[int]] """ - If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . + The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + + For array jobs, the timeout applies to the child jobs, not to the parent array job. + + For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. """ - return pulumi.get(self, "read_only") +elif False: + JobDefinitionJobTimeoutArgsDict: TypeAlias = Mapping[str, Any] - @read_only.setter - def read_only(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "read_only", value) +@pulumi.input_type +class JobDefinitionJobTimeoutArgs: + def __init__(__self__, *, + attempt_duration_seconds: Optional[pulumi.Input[int]] = None): + """ + :param pulumi.Input[int] attempt_duration_seconds: The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + + For array jobs, the timeout applies to the child jobs, not to the parent array job. + + For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + """ + if attempt_duration_seconds is not None: + pulumi.set(__self__, "attempt_duration_seconds", attempt_duration_seconds) + + @property + @pulumi.getter(name="attemptDurationSeconds") + def attempt_duration_seconds(self) -> Optional[pulumi.Input[int]]: + """ + The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + + For array jobs, the timeout applies to the child jobs, not to the parent array job. + + For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + """ + return pulumi.get(self, "attempt_duration_seconds") + + @attempt_duration_seconds.setter + def attempt_duration_seconds(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "attempt_duration_seconds", value) + + +if not MYPY: + class JobDefinitionLinuxParametersArgsDict(TypedDict): + devices: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgsDict']]]] + """ + Any of the host devices to expose to the container. This parameter maps to `Devices` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--device` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + init_process_enabled: NotRequired[pulumi.Input[bool]] + """ + If true, run an `init` process inside the container that forwards signals and reaps processes. This parameter maps to the `--init` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + """ + max_swap: NotRequired[pulumi.Input[int]] + """ + The total amount of swap memory (in MiB) a container can use. This parameter is translated to the `--memory-swap` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) where the value is the sum of the container memory plus the `maxSwap` value. For more information, see [`--memory-swap` details](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) in the Docker documentation. + + If a `maxSwap` value of `0` is specified, the container doesn't use swap. Accepted values are `0` or any positive integer. If the `maxSwap` parameter is omitted, the container doesn't use the swap configuration for the container instance that it's running on. A `maxSwap` value must be set for the `swappiness` parameter to be used. + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + shared_memory_size: NotRequired[pulumi.Input[int]] + """ + The value for the size (in MiB) of the `/dev/shm` volume. This parameter maps to the `--shm-size` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + swappiness: NotRequired[pulumi.Input[int]] + """ + You can use this parameter to tune a container's memory swappiness behavior. A `swappiness` value of `0` causes swapping to not occur unless absolutely necessary. A `swappiness` value of `100` causes pages to be swapped aggressively. Valid values are whole numbers between `0` and `100` . If the `swappiness` parameter isn't specified, a default value of `60` is used. If a value isn't specified for `maxSwap` , then this parameter is ignored. If `maxSwap` is set to 0, the container doesn't use swap. This parameter maps to the `--memory-swappiness` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + Consider the following when you use a per-container swap configuration. + + - Swap space must be enabled and allocated on the container instance for the containers to use. + + > By default, the Amazon ECS optimized AMIs don't have swap enabled. You must enable swap on the instance to use this feature. For more information, see [Instance store swap volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-swap-volumes.html) in the *Amazon EC2 User Guide for Linux Instances* or [How do I allocate memory to work as swap space in an Amazon EC2 instance by using a swap file?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/) + - The swap space parameters are only supported for job definitions using EC2 resources. + - If the `maxSwap` and `swappiness` parameters are omitted from a job definition, each container has a default `swappiness` value of 60. Moreover, the total swap usage is limited to two times the memory reservation of the container. + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + tmpfs: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgsDict']]]] + """ + The container path, mount options, and size (in MiB) of the `tmpfs` mount. This parameter maps to the `--tmpfs` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide this parameter for this resource type. + """ +elif False: + JobDefinitionLinuxParametersArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class JobDefinitionLinuxParametersArgs: + def __init__(__self__, *, + devices: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]]] = None, + init_process_enabled: Optional[pulumi.Input[bool]] = None, + max_swap: Optional[pulumi.Input[int]] = None, + shared_memory_size: Optional[pulumi.Input[int]] = None, + swappiness: Optional[pulumi.Input[int]] = None, + tmpfs: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]] devices: Any of the host devices to expose to the container. This parameter maps to `Devices` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--device` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + :param pulumi.Input[bool] init_process_enabled: If true, run an `init` process inside the container that forwards signals and reaps processes. This parameter maps to the `--init` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + :param pulumi.Input[int] max_swap: The total amount of swap memory (in MiB) a container can use. This parameter is translated to the `--memory-swap` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) where the value is the sum of the container memory plus the `maxSwap` value. For more information, see [`--memory-swap` details](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) in the Docker documentation. + + If a `maxSwap` value of `0` is specified, the container doesn't use swap. Accepted values are `0` or any positive integer. If the `maxSwap` parameter is omitted, the container doesn't use the swap configuration for the container instance that it's running on. A `maxSwap` value must be set for the `swappiness` parameter to be used. + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + :param pulumi.Input[int] shared_memory_size: The value for the size (in MiB) of the `/dev/shm` volume. This parameter maps to the `--shm-size` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + :param pulumi.Input[int] swappiness: You can use this parameter to tune a container's memory swappiness behavior. A `swappiness` value of `0` causes swapping to not occur unless absolutely necessary. A `swappiness` value of `100` causes pages to be swapped aggressively. Valid values are whole numbers between `0` and `100` . If the `swappiness` parameter isn't specified, a default value of `60` is used. If a value isn't specified for `maxSwap` , then this parameter is ignored. If `maxSwap` is set to 0, the container doesn't use swap. This parameter maps to the `--memory-swappiness` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + Consider the following when you use a per-container swap configuration. + + - Swap space must be enabled and allocated on the container instance for the containers to use. + + > By default, the Amazon ECS optimized AMIs don't have swap enabled. You must enable swap on the instance to use this feature. For more information, see [Instance store swap volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-swap-volumes.html) in the *Amazon EC2 User Guide for Linux Instances* or [How do I allocate memory to work as swap space in an Amazon EC2 instance by using a swap file?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/) + - The swap space parameters are only supported for job definitions using EC2 resources. + - If the `maxSwap` and `swappiness` parameters are omitted from a job definition, each container has a default `swappiness` value of 60. Moreover, the total swap usage is limited to two times the memory reservation of the container. + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]] tmpfs: The container path, mount options, and size (in MiB) of the `tmpfs` mount. This parameter maps to the `--tmpfs` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide this parameter for this resource type. + """ + if devices is not None: + pulumi.set(__self__, "devices", devices) + if init_process_enabled is not None: + pulumi.set(__self__, "init_process_enabled", init_process_enabled) + if max_swap is not None: + pulumi.set(__self__, "max_swap", max_swap) + if shared_memory_size is not None: + pulumi.set(__self__, "shared_memory_size", shared_memory_size) + if swappiness is not None: + pulumi.set(__self__, "swappiness", swappiness) + if tmpfs is not None: + pulumi.set(__self__, "tmpfs", tmpfs) + + @property + @pulumi.getter + def devices(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]]]: + """ + Any of the host devices to expose to the container. This parameter maps to `Devices` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--device` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + return pulumi.get(self, "devices") + + @devices.setter + def devices(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]]]): + pulumi.set(self, "devices", value) + + @property + @pulumi.getter(name="initProcessEnabled") + def init_process_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + If true, run an `init` process inside the container that forwards signals and reaps processes. This parameter maps to the `--init` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + """ + return pulumi.get(self, "init_process_enabled") + + @init_process_enabled.setter + def init_process_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "init_process_enabled", value) + + @property + @pulumi.getter(name="maxSwap") + def max_swap(self) -> Optional[pulumi.Input[int]]: + """ + The total amount of swap memory (in MiB) a container can use. This parameter is translated to the `--memory-swap` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) where the value is the sum of the container memory plus the `maxSwap` value. For more information, see [`--memory-swap` details](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) in the Docker documentation. + + If a `maxSwap` value of `0` is specified, the container doesn't use swap. Accepted values are `0` or any positive integer. If the `maxSwap` parameter is omitted, the container doesn't use the swap configuration for the container instance that it's running on. A `maxSwap` value must be set for the `swappiness` parameter to be used. + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + return pulumi.get(self, "max_swap") + + @max_swap.setter + def max_swap(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_swap", value) + + @property + @pulumi.getter(name="sharedMemorySize") + def shared_memory_size(self) -> Optional[pulumi.Input[int]]: + """ + The value for the size (in MiB) of the `/dev/shm` volume. This parameter maps to the `--shm-size` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + return pulumi.get(self, "shared_memory_size") + + @shared_memory_size.setter + def shared_memory_size(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "shared_memory_size", value) + + @property + @pulumi.getter + def swappiness(self) -> Optional[pulumi.Input[int]]: + """ + You can use this parameter to tune a container's memory swappiness behavior. A `swappiness` value of `0` causes swapping to not occur unless absolutely necessary. A `swappiness` value of `100` causes pages to be swapped aggressively. Valid values are whole numbers between `0` and `100` . If the `swappiness` parameter isn't specified, a default value of `60` is used. If a value isn't specified for `maxSwap` , then this parameter is ignored. If `maxSwap` is set to 0, the container doesn't use swap. This parameter maps to the `--memory-swappiness` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + Consider the following when you use a per-container swap configuration. + + - Swap space must be enabled and allocated on the container instance for the containers to use. + + > By default, the Amazon ECS optimized AMIs don't have swap enabled. You must enable swap on the instance to use this feature. For more information, see [Instance store swap volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-swap-volumes.html) in the *Amazon EC2 User Guide for Linux Instances* or [How do I allocate memory to work as swap space in an Amazon EC2 instance by using a swap file?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/) + - The swap space parameters are only supported for job definitions using EC2 resources. + - If the `maxSwap` and `swappiness` parameters are omitted from a job definition, each container has a default `swappiness` value of 60. Moreover, the total swap usage is limited to two times the memory reservation of the container. + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide it for these jobs. + """ + return pulumi.get(self, "swappiness") + + @swappiness.setter + def swappiness(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "swappiness", value) + + @property + @pulumi.getter + def tmpfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]]: + """ + The container path, mount options, and size (in MiB) of the `tmpfs` mount. This parameter maps to the `--tmpfs` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + + > This parameter isn't applicable to jobs that are running on Fargate resources. Don't provide this parameter for this resource type. + """ + return pulumi.get(self, "tmpfs") + + @tmpfs.setter + def tmpfs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]]): + pulumi.set(self, "tmpfs", value) + + +if not MYPY: + class JobDefinitionLogConfigurationArgsDict(TypedDict): + log_driver: pulumi.Input[str] + """ + The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. + + The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . + + > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. + + - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. + - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . + - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . + - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . + - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . + - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . + - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . + + > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. + + This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + """ + options: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] + """ + The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + """ + secret_options: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgsDict']]]] + """ + The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . + """ +elif False: + JobDefinitionLogConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class JobDefinitionLogConfigurationArgs: + def __init__(__self__, *, + log_driver: pulumi.Input[str], + options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + secret_options: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]] = None): + """ + :param pulumi.Input[str] log_driver: The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. + + The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . + + > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. + + - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. + - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . + - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . + - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . + - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . + - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . + - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . + + > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. + + This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]] secret_options: The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . + """ + pulumi.set(__self__, "log_driver", log_driver) + if options is not None: + pulumi.set(__self__, "options", options) + if secret_options is not None: + pulumi.set(__self__, "secret_options", secret_options) + + @property + @pulumi.getter(name="logDriver") + def log_driver(self) -> pulumi.Input[str]: + """ + The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. + + The supported log drivers are `awslogs` , `fluentd` , `gelf` , `json-file` , `journald` , `logentries` , `syslog` , and `splunk` . + + > Jobs that are running on Fargate resources are restricted to the `awslogs` and `splunk` log drivers. + + - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see [Using the awslogs log driver](https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html) in the *AWS Batch User Guide* and [Amazon CloudWatch Logs logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/) in the Docker documentation. + - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see [Fluentd logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/) in the *Docker documentation* . + - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see [Graylog Extended Format logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/) in the *Docker documentation* . + - **journald** - Specifies the journald logging driver. For more information including usage and options, see [Journald logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/) in the *Docker documentation* . + - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see [JSON File logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/) in the *Docker documentation* . + - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see [Splunk logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/) in the *Docker documentation* . + - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see [Syslog logging driver](https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/) in the *Docker documentation* . + + > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. + + This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + """ + return pulumi.get(self, "log_driver") + + @log_driver.setter + def log_driver(self, value: pulumi.Input[str]): + pulumi.set(self, "log_driver", value) + + @property + @pulumi.getter + def options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + """ + return pulumi.get(self, "options") + + @options.setter + def options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "options", value) + + @property + @pulumi.getter(name="secretOptions") + def secret_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]: + """ + The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . + """ + return pulumi.get(self, "secret_options") + + @secret_options.setter + def secret_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]): + pulumi.set(self, "secret_options", value) + + +if not MYPY: + class JobDefinitionMountPointArgsDict(TypedDict): + container_path: NotRequired[pulumi.Input[str]] + """ + The path on the container where the host volume is mounted. + """ + read_only: NotRequired[pulumi.Input[bool]] + """ + If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . + """ + source_volume: NotRequired[pulumi.Input[str]] + """ + The name of the volume to mount. + """ +elif False: + JobDefinitionMountPointArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class JobDefinitionMountPointArgs: + def __init__(__self__, *, + container_path: Optional[pulumi.Input[str]] = None, + read_only: Optional[pulumi.Input[bool]] = None, + source_volume: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] container_path: The path on the container where the host volume is mounted. + :param pulumi.Input[bool] read_only: If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . + :param pulumi.Input[str] source_volume: The name of the volume to mount. + """ + if container_path is not None: + pulumi.set(__self__, "container_path", container_path) + if read_only is not None: + pulumi.set(__self__, "read_only", read_only) + if source_volume is not None: + pulumi.set(__self__, "source_volume", source_volume) + + @property + @pulumi.getter(name="containerPath") + def container_path(self) -> Optional[pulumi.Input[str]]: + """ + The path on the container where the host volume is mounted. + """ + return pulumi.get(self, "container_path") + + @container_path.setter + def container_path(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "container_path", value) + + @property + @pulumi.getter(name="readOnly") + def read_only(self) -> Optional[pulumi.Input[bool]]: + """ + If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . + """ + return pulumi.get(self, "read_only") + + @read_only.setter + def read_only(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "read_only", value) + + @property + @pulumi.getter(name="sourceVolume") + def source_volume(self) -> Optional[pulumi.Input[str]]: + """ + The name of the volume to mount. + """ + return pulumi.get(self, "source_volume") + + @source_volume.setter + def source_volume(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_volume", value) + + +if not MYPY: + class JobDefinitionMultiNodeContainerPropertiesArgsDict(TypedDict): + image: pulumi.Input[str] + command: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + environment: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEnvironmentArgsDict']]]] + ephemeral_storage: NotRequired[pulumi.Input['JobDefinitionEphemeralStorageArgsDict']] + execution_role_arn: NotRequired[pulumi.Input[str]] + instance_type: NotRequired[pulumi.Input[str]] + job_role_arn: NotRequired[pulumi.Input[str]] + linux_parameters: NotRequired[pulumi.Input['JobDefinitionLinuxParametersArgsDict']] + log_configuration: NotRequired[pulumi.Input['JobDefinitionLogConfigurationArgsDict']] + memory: NotRequired[pulumi.Input[int]] + mount_points: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgsDict']]]] + privileged: NotRequired[pulumi.Input[bool]] + readonly_root_filesystem: NotRequired[pulumi.Input[bool]] + repository_credentials: NotRequired[pulumi.Input['JobDefinitionRepositoryCredentialsArgsDict']] + resource_requirements: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionResourceRequirementArgsDict']]]] + runtime_platform: NotRequired[pulumi.Input['JobDefinitionRuntimePlatformArgsDict']] + secrets: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgsDict']]]] + ulimits: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionUlimitArgsDict']]]] + user: NotRequired[pulumi.Input[str]] + vcpus: NotRequired[pulumi.Input[int]] + volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgsDict']]]] +elif False: + JobDefinitionMultiNodeContainerPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class JobDefinitionMultiNodeContainerPropertiesArgs: + def __init__(__self__, *, + image: pulumi.Input[str], + command: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + environment: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEnvironmentArgs']]]] = None, + ephemeral_storage: Optional[pulumi.Input['JobDefinitionEphemeralStorageArgs']] = None, + execution_role_arn: Optional[pulumi.Input[str]] = None, + instance_type: Optional[pulumi.Input[str]] = None, + job_role_arn: Optional[pulumi.Input[str]] = None, + linux_parameters: Optional[pulumi.Input['JobDefinitionLinuxParametersArgs']] = None, + log_configuration: Optional[pulumi.Input['JobDefinitionLogConfigurationArgs']] = None, + memory: Optional[pulumi.Input[int]] = None, + mount_points: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]] = None, + privileged: Optional[pulumi.Input[bool]] = None, + readonly_root_filesystem: Optional[pulumi.Input[bool]] = None, + repository_credentials: Optional[pulumi.Input['JobDefinitionRepositoryCredentialsArgs']] = None, + resource_requirements: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionResourceRequirementArgs']]]] = None, + runtime_platform: Optional[pulumi.Input['JobDefinitionRuntimePlatformArgs']] = None, + secrets: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]] = None, + ulimits: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionUlimitArgs']]]] = None, + user: Optional[pulumi.Input[str]] = None, + vcpus: Optional[pulumi.Input[int]] = None, + volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]] = None): + pulumi.set(__self__, "image", image) + if command is not None: + pulumi.set(__self__, "command", command) + if environment is not None: + pulumi.set(__self__, "environment", environment) + if ephemeral_storage is not None: + pulumi.set(__self__, "ephemeral_storage", ephemeral_storage) + if execution_role_arn is not None: + pulumi.set(__self__, "execution_role_arn", execution_role_arn) + if instance_type is not None: + pulumi.set(__self__, "instance_type", instance_type) + if job_role_arn is not None: + pulumi.set(__self__, "job_role_arn", job_role_arn) + if linux_parameters is not None: + pulumi.set(__self__, "linux_parameters", linux_parameters) + if log_configuration is not None: + pulumi.set(__self__, "log_configuration", log_configuration) + if memory is not None: + pulumi.set(__self__, "memory", memory) + if mount_points is not None: + pulumi.set(__self__, "mount_points", mount_points) + if privileged is not None: + pulumi.set(__self__, "privileged", privileged) + if readonly_root_filesystem is not None: + pulumi.set(__self__, "readonly_root_filesystem", readonly_root_filesystem) + if repository_credentials is not None: + pulumi.set(__self__, "repository_credentials", repository_credentials) + if resource_requirements is not None: + pulumi.set(__self__, "resource_requirements", resource_requirements) + if runtime_platform is not None: + pulumi.set(__self__, "runtime_platform", runtime_platform) + if secrets is not None: + pulumi.set(__self__, "secrets", secrets) + if ulimits is not None: + pulumi.set(__self__, "ulimits", ulimits) + if user is not None: + pulumi.set(__self__, "user", user) + if vcpus is not None: + pulumi.set(__self__, "vcpus", vcpus) + if volumes is not None: + pulumi.set(__self__, "volumes", volumes) + + @property + @pulumi.getter + def image(self) -> pulumi.Input[str]: + return pulumi.get(self, "image") + + @image.setter + def image(self, value: pulumi.Input[str]): + pulumi.set(self, "image", value) + + @property + @pulumi.getter + def command(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "command") + + @command.setter + def command(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "command", value) + + @property + @pulumi.getter + def environment(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEnvironmentArgs']]]]: + return pulumi.get(self, "environment") + + @environment.setter + def environment(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEnvironmentArgs']]]]): + pulumi.set(self, "environment", value) + + @property + @pulumi.getter(name="ephemeralStorage") + def ephemeral_storage(self) -> Optional[pulumi.Input['JobDefinitionEphemeralStorageArgs']]: + return pulumi.get(self, "ephemeral_storage") + + @ephemeral_storage.setter + def ephemeral_storage(self, value: Optional[pulumi.Input['JobDefinitionEphemeralStorageArgs']]): + pulumi.set(self, "ephemeral_storage", value) + + @property + @pulumi.getter(name="executionRoleArn") + def execution_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "execution_role_arn") + + @execution_role_arn.setter + def execution_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "execution_role_arn", value) + + @property + @pulumi.getter(name="instanceType") + def instance_type(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "instance_type") + + @instance_type.setter + def instance_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "instance_type", value) + + @property + @pulumi.getter(name="jobRoleArn") + def job_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "job_role_arn") + + @job_role_arn.setter + def job_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "job_role_arn", value) + + @property + @pulumi.getter(name="linuxParameters") + def linux_parameters(self) -> Optional[pulumi.Input['JobDefinitionLinuxParametersArgs']]: + return pulumi.get(self, "linux_parameters") + + @linux_parameters.setter + def linux_parameters(self, value: Optional[pulumi.Input['JobDefinitionLinuxParametersArgs']]): + pulumi.set(self, "linux_parameters", value) + + @property + @pulumi.getter(name="logConfiguration") + def log_configuration(self) -> Optional[pulumi.Input['JobDefinitionLogConfigurationArgs']]: + return pulumi.get(self, "log_configuration") + + @log_configuration.setter + def log_configuration(self, value: Optional[pulumi.Input['JobDefinitionLogConfigurationArgs']]): + pulumi.set(self, "log_configuration", value) + + @property + @pulumi.getter + def memory(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "memory") + + @memory.setter + def memory(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "memory", value) + + @property + @pulumi.getter(name="mountPoints") + def mount_points(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]]: + return pulumi.get(self, "mount_points") + + @mount_points.setter + def mount_points(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]]): + pulumi.set(self, "mount_points", value) + + @property + @pulumi.getter + def privileged(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "privileged") + + @privileged.setter + def privileged(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "privileged", value) + + @property + @pulumi.getter(name="readonlyRootFilesystem") + def readonly_root_filesystem(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "readonly_root_filesystem") + + @readonly_root_filesystem.setter + def readonly_root_filesystem(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "readonly_root_filesystem", value) + + @property + @pulumi.getter(name="repositoryCredentials") + def repository_credentials(self) -> Optional[pulumi.Input['JobDefinitionRepositoryCredentialsArgs']]: + return pulumi.get(self, "repository_credentials") + + @repository_credentials.setter + def repository_credentials(self, value: Optional[pulumi.Input['JobDefinitionRepositoryCredentialsArgs']]): + pulumi.set(self, "repository_credentials", value) + + @property + @pulumi.getter(name="resourceRequirements") + def resource_requirements(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionResourceRequirementArgs']]]]: + return pulumi.get(self, "resource_requirements") + + @resource_requirements.setter + def resource_requirements(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionResourceRequirementArgs']]]]): + pulumi.set(self, "resource_requirements", value) + + @property + @pulumi.getter(name="runtimePlatform") + def runtime_platform(self) -> Optional[pulumi.Input['JobDefinitionRuntimePlatformArgs']]: + return pulumi.get(self, "runtime_platform") + + @runtime_platform.setter + def runtime_platform(self, value: Optional[pulumi.Input['JobDefinitionRuntimePlatformArgs']]): + pulumi.set(self, "runtime_platform", value) + + @property + @pulumi.getter + def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]: + return pulumi.get(self, "secrets") + + @secrets.setter + def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]): + pulumi.set(self, "secrets", value) + + @property + @pulumi.getter + def ulimits(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionUlimitArgs']]]]: + return pulumi.get(self, "ulimits") + + @ulimits.setter + def ulimits(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionUlimitArgs']]]]): + pulumi.set(self, "ulimits", value) + + @property + @pulumi.getter + def user(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "user") + + @user.setter + def user(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user", value) + + @property + @pulumi.getter + def vcpus(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "vcpus") + + @vcpus.setter + def vcpus(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "vcpus", value) + + @property + @pulumi.getter + def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]: + return pulumi.get(self, "volumes") + + @volumes.setter + def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]): + pulumi.set(self, "volumes", value) + + +if not MYPY: + class JobDefinitionMultiNodeEcsPropertiesArgsDict(TypedDict): + task_properties: pulumi.Input[Sequence[pulumi.Input['JobDefinitionMultiNodeEcsTaskPropertiesArgsDict']]] +elif False: + JobDefinitionMultiNodeEcsPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class JobDefinitionMultiNodeEcsPropertiesArgs: + def __init__(__self__, *, + task_properties: pulumi.Input[Sequence[pulumi.Input['JobDefinitionMultiNodeEcsTaskPropertiesArgs']]]): + pulumi.set(__self__, "task_properties", task_properties) + + @property + @pulumi.getter(name="taskProperties") + def task_properties(self) -> pulumi.Input[Sequence[pulumi.Input['JobDefinitionMultiNodeEcsTaskPropertiesArgs']]]: + return pulumi.get(self, "task_properties") + + @task_properties.setter + def task_properties(self, value: pulumi.Input[Sequence[pulumi.Input['JobDefinitionMultiNodeEcsTaskPropertiesArgs']]]): + pulumi.set(self, "task_properties", value) + + +if not MYPY: + class JobDefinitionMultiNodeEcsTaskPropertiesArgsDict(TypedDict): + containers: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTaskContainerPropertiesArgsDict']]]] + execution_role_arn: NotRequired[pulumi.Input[str]] + ipc_mode: NotRequired[pulumi.Input[str]] + pid_mode: NotRequired[pulumi.Input[str]] + task_role_arn: NotRequired[pulumi.Input[str]] + volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgsDict']]]] +elif False: + JobDefinitionMultiNodeEcsTaskPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class JobDefinitionMultiNodeEcsTaskPropertiesArgs: + def __init__(__self__, *, + containers: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTaskContainerPropertiesArgs']]]] = None, + execution_role_arn: Optional[pulumi.Input[str]] = None, + ipc_mode: Optional[pulumi.Input[str]] = None, + pid_mode: Optional[pulumi.Input[str]] = None, + task_role_arn: Optional[pulumi.Input[str]] = None, + volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]] = None): + if containers is not None: + pulumi.set(__self__, "containers", containers) + if execution_role_arn is not None: + pulumi.set(__self__, "execution_role_arn", execution_role_arn) + if ipc_mode is not None: + pulumi.set(__self__, "ipc_mode", ipc_mode) + if pid_mode is not None: + pulumi.set(__self__, "pid_mode", pid_mode) + if task_role_arn is not None: + pulumi.set(__self__, "task_role_arn", task_role_arn) + if volumes is not None: + pulumi.set(__self__, "volumes", volumes) + + @property + @pulumi.getter + def containers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTaskContainerPropertiesArgs']]]]: + return pulumi.get(self, "containers") + + @containers.setter + def containers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTaskContainerPropertiesArgs']]]]): + pulumi.set(self, "containers", value) + + @property + @pulumi.getter(name="executionRoleArn") + def execution_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "execution_role_arn") + + @execution_role_arn.setter + def execution_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "execution_role_arn", value) + + @property + @pulumi.getter(name="ipcMode") + def ipc_mode(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "ipc_mode") + + @ipc_mode.setter + def ipc_mode(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ipc_mode", value) + + @property + @pulumi.getter(name="pidMode") + def pid_mode(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "pid_mode") + + @pid_mode.setter + def pid_mode(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "pid_mode", value) + + @property + @pulumi.getter(name="taskRoleArn") + def task_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "task_role_arn") + + @task_role_arn.setter + def task_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "task_role_arn", value) @property - @pulumi.getter(name="sourceVolume") - def source_volume(self) -> Optional[pulumi.Input[str]]: - """ - The name of the volume to mount. - """ - return pulumi.get(self, "source_volume") + @pulumi.getter + def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]: + return pulumi.get(self, "volumes") - @source_volume.setter - def source_volume(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "source_volume", value) + @volumes.setter + def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionVolumeArgs']]]]): + pulumi.set(self, "volumes", value) if not MYPY: @@ -3836,376 +4504,173 @@ def __init__(__self__, *, main_node: pulumi.Input[int], node_range_properties: pulumi.Input[Sequence[pulumi.Input['JobDefinitionNodeRangePropertyArgs']]], num_nodes: pulumi.Input[int]): - """ - :param pulumi.Input[int] main_node: Specifies the node index for the main node of a multi-node parallel job. This node index value must be fewer than the number of nodes. - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionNodeRangePropertyArgs']]] node_range_properties: A list of node ranges and their properties that are associated with a multi-node parallel job. - :param pulumi.Input[int] num_nodes: The number of nodes that are associated with a multi-node parallel job. - """ - pulumi.set(__self__, "main_node", main_node) - pulumi.set(__self__, "node_range_properties", node_range_properties) - pulumi.set(__self__, "num_nodes", num_nodes) - - @property - @pulumi.getter(name="mainNode") - def main_node(self) -> pulumi.Input[int]: - """ - Specifies the node index for the main node of a multi-node parallel job. This node index value must be fewer than the number of nodes. - """ - return pulumi.get(self, "main_node") - - @main_node.setter - def main_node(self, value: pulumi.Input[int]): - pulumi.set(self, "main_node", value) - - @property - @pulumi.getter(name="nodeRangeProperties") - def node_range_properties(self) -> pulumi.Input[Sequence[pulumi.Input['JobDefinitionNodeRangePropertyArgs']]]: - """ - A list of node ranges and their properties that are associated with a multi-node parallel job. - """ - return pulumi.get(self, "node_range_properties") - - @node_range_properties.setter - def node_range_properties(self, value: pulumi.Input[Sequence[pulumi.Input['JobDefinitionNodeRangePropertyArgs']]]): - pulumi.set(self, "node_range_properties", value) - - @property - @pulumi.getter(name="numNodes") - def num_nodes(self) -> pulumi.Input[int]: - """ - The number of nodes that are associated with a multi-node parallel job. - """ - return pulumi.get(self, "num_nodes") - - @num_nodes.setter - def num_nodes(self, value: pulumi.Input[int]): - pulumi.set(self, "num_nodes", value) - - -if not MYPY: - class JobDefinitionNodeRangePropertyArgsDict(TypedDict): - target_nodes: pulumi.Input[str] - """ - The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. - """ - container: NotRequired[pulumi.Input['JobDefinitionContainerPropertiesArgsDict']] - """ - The container details for the node range. - """ - ecs_properties: NotRequired[pulumi.Input['JobDefinitionEcsPropertiesArgsDict']] - """ - This is an object that represents the properties of the node range for a multi-node parallel job. - """ - eks_properties: NotRequired[pulumi.Input['JobDefinitionEksPropertiesArgsDict']] - """ - This is an object that represents the properties of the node range for a multi-node parallel job. - """ - instance_types: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] - """ - The instance types of the underlying host infrastructure of a multi-node parallel job. - - > This parameter isn't applicable to jobs that are running on Fargate resources. - > - > In addition, this list object is currently limited to one element. - """ -elif False: - JobDefinitionNodeRangePropertyArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class JobDefinitionNodeRangePropertyArgs: - def __init__(__self__, *, - target_nodes: pulumi.Input[str], - container: Optional[pulumi.Input['JobDefinitionContainerPropertiesArgs']] = None, - ecs_properties: Optional[pulumi.Input['JobDefinitionEcsPropertiesArgs']] = None, - eks_properties: Optional[pulumi.Input['JobDefinitionEksPropertiesArgs']] = None, - instance_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): - """ - :param pulumi.Input[str] target_nodes: The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. - :param pulumi.Input['JobDefinitionContainerPropertiesArgs'] container: The container details for the node range. - :param pulumi.Input['JobDefinitionEcsPropertiesArgs'] ecs_properties: This is an object that represents the properties of the node range for a multi-node parallel job. - :param pulumi.Input['JobDefinitionEksPropertiesArgs'] eks_properties: This is an object that represents the properties of the node range for a multi-node parallel job. - :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types: The instance types of the underlying host infrastructure of a multi-node parallel job. - - > This parameter isn't applicable to jobs that are running on Fargate resources. - > - > In addition, this list object is currently limited to one element. - """ - pulumi.set(__self__, "target_nodes", target_nodes) - if container is not None: - pulumi.set(__self__, "container", container) - if ecs_properties is not None: - pulumi.set(__self__, "ecs_properties", ecs_properties) - if eks_properties is not None: - pulumi.set(__self__, "eks_properties", eks_properties) - if instance_types is not None: - pulumi.set(__self__, "instance_types", instance_types) - - @property - @pulumi.getter(name="targetNodes") - def target_nodes(self) -> pulumi.Input[str]: - """ - The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. - """ - return pulumi.get(self, "target_nodes") - - @target_nodes.setter - def target_nodes(self, value: pulumi.Input[str]): - pulumi.set(self, "target_nodes", value) - - @property - @pulumi.getter - def container(self) -> Optional[pulumi.Input['JobDefinitionContainerPropertiesArgs']]: - """ - The container details for the node range. - """ - return pulumi.get(self, "container") - - @container.setter - def container(self, value: Optional[pulumi.Input['JobDefinitionContainerPropertiesArgs']]): - pulumi.set(self, "container", value) - - @property - @pulumi.getter(name="ecsProperties") - def ecs_properties(self) -> Optional[pulumi.Input['JobDefinitionEcsPropertiesArgs']]: - """ - This is an object that represents the properties of the node range for a multi-node parallel job. - """ - return pulumi.get(self, "ecs_properties") - - @ecs_properties.setter - def ecs_properties(self, value: Optional[pulumi.Input['JobDefinitionEcsPropertiesArgs']]): - pulumi.set(self, "ecs_properties", value) - - @property - @pulumi.getter(name="eksProperties") - def eks_properties(self) -> Optional[pulumi.Input['JobDefinitionEksPropertiesArgs']]: - """ - This is an object that represents the properties of the node range for a multi-node parallel job. - """ - return pulumi.get(self, "eks_properties") - - @eks_properties.setter - def eks_properties(self, value: Optional[pulumi.Input['JobDefinitionEksPropertiesArgs']]): - pulumi.set(self, "eks_properties", value) - - @property - @pulumi.getter(name="instanceTypes") - def instance_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The instance types of the underlying host infrastructure of a multi-node parallel job. - - > This parameter isn't applicable to jobs that are running on Fargate resources. - > - > In addition, this list object is currently limited to one element. - """ - return pulumi.get(self, "instance_types") - - @instance_types.setter - def instance_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "instance_types", value) - - -if not MYPY: - class JobDefinitionPodPropertiesArgsDict(TypedDict): - containers: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgsDict']]]] - """ - The properties of the container that's used on the Amazon EKS pod. - - > This object is limited to 10 elements. - """ - dns_policy: NotRequired[pulumi.Input[str]] - """ - The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - - Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - """ - host_network: NotRequired[pulumi.Input[bool]] - """ - Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - """ - image_pull_secrets: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgsDict']]]] - init_containers: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgsDict']]]] - """ - These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - - > This object is limited to 10 elements. - """ - metadata: NotRequired[pulumi.Input['JobDefinitionMetadataArgsDict']] - """ - Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - """ - service_account_name: NotRequired[pulumi.Input[str]] - """ - The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - """ - share_process_namespace: NotRequired[pulumi.Input[bool]] - """ - Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - """ - volumes: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgsDict']]]] - """ - Specifies the volumes for a job definition that uses Amazon EKS resources. - """ -elif False: - JobDefinitionPodPropertiesArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class JobDefinitionPodPropertiesArgs: - def __init__(__self__, *, - containers: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]] = None, - dns_policy: Optional[pulumi.Input[str]] = None, - host_network: Optional[pulumi.Input[bool]] = None, - image_pull_secrets: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgs']]]] = None, - init_containers: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]] = None, - metadata: Optional[pulumi.Input['JobDefinitionMetadataArgs']] = None, - service_account_name: Optional[pulumi.Input[str]] = None, - share_process_namespace: Optional[pulumi.Input[bool]] = None, - volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]] = None): - """ - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]] containers: The properties of the container that's used on the Amazon EKS pod. - - > This object is limited to 10 elements. - :param pulumi.Input[str] dns_policy: The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - - Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - :param pulumi.Input[bool] host_network: Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]] init_containers: These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - - > This object is limited to 10 elements. - :param pulumi.Input['JobDefinitionMetadataArgs'] metadata: Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - :param pulumi.Input[str] service_account_name: The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - :param pulumi.Input[bool] share_process_namespace: Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]] volumes: Specifies the volumes for a job definition that uses Amazon EKS resources. - """ - if containers is not None: - pulumi.set(__self__, "containers", containers) - if dns_policy is not None: - pulumi.set(__self__, "dns_policy", dns_policy) - if host_network is not None: - pulumi.set(__self__, "host_network", host_network) - if image_pull_secrets is not None: - pulumi.set(__self__, "image_pull_secrets", image_pull_secrets) - if init_containers is not None: - pulumi.set(__self__, "init_containers", init_containers) - if metadata is not None: - pulumi.set(__self__, "metadata", metadata) - if service_account_name is not None: - pulumi.set(__self__, "service_account_name", service_account_name) - if share_process_namespace is not None: - pulumi.set(__self__, "share_process_namespace", share_process_namespace) - if volumes is not None: - pulumi.set(__self__, "volumes", volumes) + """ + :param pulumi.Input[int] main_node: Specifies the node index for the main node of a multi-node parallel job. This node index value must be fewer than the number of nodes. + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionNodeRangePropertyArgs']]] node_range_properties: A list of node ranges and their properties that are associated with a multi-node parallel job. + :param pulumi.Input[int] num_nodes: The number of nodes that are associated with a multi-node parallel job. + """ + pulumi.set(__self__, "main_node", main_node) + pulumi.set(__self__, "node_range_properties", node_range_properties) + pulumi.set(__self__, "num_nodes", num_nodes) @property - @pulumi.getter - def containers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]: + @pulumi.getter(name="mainNode") + def main_node(self) -> pulumi.Input[int]: """ - The properties of the container that's used on the Amazon EKS pod. - - > This object is limited to 10 elements. + Specifies the node index for the main node of a multi-node parallel job. This node index value must be fewer than the number of nodes. """ - return pulumi.get(self, "containers") + return pulumi.get(self, "main_node") - @containers.setter - def containers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]): - pulumi.set(self, "containers", value) + @main_node.setter + def main_node(self, value: pulumi.Input[int]): + pulumi.set(self, "main_node", value) @property - @pulumi.getter(name="dnsPolicy") - def dns_policy(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter(name="nodeRangeProperties") + def node_range_properties(self) -> pulumi.Input[Sequence[pulumi.Input['JobDefinitionNodeRangePropertyArgs']]]: """ - The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - - Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` + A list of node ranges and their properties that are associated with a multi-node parallel job. """ - return pulumi.get(self, "dns_policy") + return pulumi.get(self, "node_range_properties") - @dns_policy.setter - def dns_policy(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "dns_policy", value) + @node_range_properties.setter + def node_range_properties(self, value: pulumi.Input[Sequence[pulumi.Input['JobDefinitionNodeRangePropertyArgs']]]): + pulumi.set(self, "node_range_properties", value) @property - @pulumi.getter(name="hostNetwork") - def host_network(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="numNodes") + def num_nodes(self) -> pulumi.Input[int]: """ - Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + The number of nodes that are associated with a multi-node parallel job. """ - return pulumi.get(self, "host_network") + return pulumi.get(self, "num_nodes") - @host_network.setter - def host_network(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "host_network", value) + @num_nodes.setter + def num_nodes(self, value: pulumi.Input[int]): + pulumi.set(self, "num_nodes", value) - @property - @pulumi.getter(name="imagePullSecrets") - def image_pull_secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgs']]]]: - return pulumi.get(self, "image_pull_secrets") - @image_pull_secrets.setter - def image_pull_secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionImagePullSecretArgs']]]]): - pulumi.set(self, "image_pull_secrets", value) +if not MYPY: + class JobDefinitionNodeRangePropertyArgsDict(TypedDict): + target_nodes: pulumi.Input[str] + """ + The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. + """ + container: NotRequired[pulumi.Input['JobDefinitionMultiNodeContainerPropertiesArgsDict']] + """ + The container details for the node range. + """ + ecs_properties: NotRequired[pulumi.Input['JobDefinitionMultiNodeEcsPropertiesArgsDict']] + """ + This is an object that represents the properties of the node range for a multi-node parallel job. + """ + eks_properties: NotRequired[pulumi.Input['JobDefinitionEksPropertiesArgsDict']] + """ + This is an object that represents the properties of the node range for a multi-node parallel job. + """ + instance_types: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + The instance types of the underlying host infrastructure of a multi-node parallel job. - @property - @pulumi.getter(name="initContainers") - def init_containers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]: + > This parameter isn't applicable to jobs that are running on Fargate resources. + > + > In addition, this list object is currently limited to one element. """ - These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . +elif False: + JobDefinitionNodeRangePropertyArgsDict: TypeAlias = Mapping[str, Any] - > This object is limited to 10 elements. +@pulumi.input_type +class JobDefinitionNodeRangePropertyArgs: + def __init__(__self__, *, + target_nodes: pulumi.Input[str], + container: Optional[pulumi.Input['JobDefinitionMultiNodeContainerPropertiesArgs']] = None, + ecs_properties: Optional[pulumi.Input['JobDefinitionMultiNodeEcsPropertiesArgs']] = None, + eks_properties: Optional[pulumi.Input['JobDefinitionEksPropertiesArgs']] = None, + instance_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - return pulumi.get(self, "init_containers") + :param pulumi.Input[str] target_nodes: The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. + :param pulumi.Input['JobDefinitionMultiNodeContainerPropertiesArgs'] container: The container details for the node range. + :param pulumi.Input['JobDefinitionMultiNodeEcsPropertiesArgs'] ecs_properties: This is an object that represents the properties of the node range for a multi-node parallel job. + :param pulumi.Input['JobDefinitionEksPropertiesArgs'] eks_properties: This is an object that represents the properties of the node range for a multi-node parallel job. + :param pulumi.Input[Sequence[pulumi.Input[str]]] instance_types: The instance types of the underlying host infrastructure of a multi-node parallel job. + + > This parameter isn't applicable to jobs that are running on Fargate resources. + > + > In addition, this list object is currently limited to one element. + """ + pulumi.set(__self__, "target_nodes", target_nodes) + if container is not None: + pulumi.set(__self__, "container", container) + if ecs_properties is not None: + pulumi.set(__self__, "ecs_properties", ecs_properties) + if eks_properties is not None: + pulumi.set(__self__, "eks_properties", eks_properties) + if instance_types is not None: + pulumi.set(__self__, "instance_types", instance_types) - @init_containers.setter - def init_containers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]): - pulumi.set(self, "init_containers", value) + @property + @pulumi.getter(name="targetNodes") + def target_nodes(self) -> pulumi.Input[str]: + """ + The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. + """ + return pulumi.get(self, "target_nodes") + + @target_nodes.setter + def target_nodes(self, value: pulumi.Input[str]): + pulumi.set(self, "target_nodes", value) @property @pulumi.getter - def metadata(self) -> Optional[pulumi.Input['JobDefinitionMetadataArgs']]: + def container(self) -> Optional[pulumi.Input['JobDefinitionMultiNodeContainerPropertiesArgs']]: """ - Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + The container details for the node range. """ - return pulumi.get(self, "metadata") + return pulumi.get(self, "container") - @metadata.setter - def metadata(self, value: Optional[pulumi.Input['JobDefinitionMetadataArgs']]): - pulumi.set(self, "metadata", value) + @container.setter + def container(self, value: Optional[pulumi.Input['JobDefinitionMultiNodeContainerPropertiesArgs']]): + pulumi.set(self, "container", value) @property - @pulumi.getter(name="serviceAccountName") - def service_account_name(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter(name="ecsProperties") + def ecs_properties(self) -> Optional[pulumi.Input['JobDefinitionMultiNodeEcsPropertiesArgs']]: """ - The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + This is an object that represents the properties of the node range for a multi-node parallel job. """ - return pulumi.get(self, "service_account_name") + return pulumi.get(self, "ecs_properties") - @service_account_name.setter - def service_account_name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "service_account_name", value) + @ecs_properties.setter + def ecs_properties(self, value: Optional[pulumi.Input['JobDefinitionMultiNodeEcsPropertiesArgs']]): + pulumi.set(self, "ecs_properties", value) @property - @pulumi.getter(name="shareProcessNamespace") - def share_process_namespace(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="eksProperties") + def eks_properties(self) -> Optional[pulumi.Input['JobDefinitionEksPropertiesArgs']]: """ - Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + This is an object that represents the properties of the node range for a multi-node parallel job. """ - return pulumi.get(self, "share_process_namespace") + return pulumi.get(self, "eks_properties") - @share_process_namespace.setter - def share_process_namespace(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "share_process_namespace", value) + @eks_properties.setter + def eks_properties(self, value: Optional[pulumi.Input['JobDefinitionEksPropertiesArgs']]): + pulumi.set(self, "eks_properties", value) @property - @pulumi.getter - def volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]: + @pulumi.getter(name="instanceTypes") + def instance_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Specifies the volumes for a job definition that uses Amazon EKS resources. + The instance types of the underlying host infrastructure of a multi-node parallel job. + + > This parameter isn't applicable to jobs that are running on Fargate resources. + > + > In addition, this list object is currently limited to one element. """ - return pulumi.get(self, "volumes") + return pulumi.get(self, "instance_types") - @volumes.setter - def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]): - pulumi.set(self, "volumes", value) + @instance_types.setter + def instance_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "instance_types", value) if not MYPY: @@ -4680,7 +5145,7 @@ class JobDefinitionTaskContainerPropertiesArgsDict(TypedDict): > The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before containers placed on that instance can use these log configuration options. For more information, see [Amazon ECS container agent configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide* . """ - mount_points: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgsDict']]]] + mount_points: NotRequired[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgsDict']]]] """ The mount points for data volumes in your container. @@ -4756,7 +5221,7 @@ def __init__(__self__, *, essential: Optional[pulumi.Input[bool]] = None, linux_parameters: Optional[pulumi.Input['JobDefinitionLinuxParametersArgs']] = None, log_configuration: Optional[pulumi.Input['JobDefinitionLogConfigurationArgs']] = None, - mount_points: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]]] = None, + mount_points: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]] = None, name: Optional[pulumi.Input[str]] = None, privileged: Optional[pulumi.Input[bool]] = None, readonly_root_filesystem: Optional[pulumi.Input[bool]] = None, @@ -4787,7 +5252,7 @@ def __init__(__self__, *, This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version `--format '{{.Server.APIVersion}}'` > The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before containers placed on that instance can use these log configuration options. For more information, see [Amazon ECS container agent configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide* . - :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]] mount_points: The mount points for data volumes in your container. + :param pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]] mount_points: The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the [--volume](https://docs.aws.amazon.com/) option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . @@ -4956,7 +5421,7 @@ def log_configuration(self, value: Optional[pulumi.Input['JobDefinitionLogConfig @property @pulumi.getter(name="mountPoints") - def mount_points(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]]]: + def mount_points(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]]: """ The mount points for data volumes in your container. @@ -4967,7 +5432,7 @@ def mount_points(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefini return pulumi.get(self, "mount_points") @mount_points.setter - def mount_points(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]]]): + def mount_points(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]]): pulumi.set(self, "mount_points", value) @property @@ -5090,50 +5555,6 @@ def user(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "user", value) -if not MYPY: - class JobDefinitionTimeoutArgsDict(TypedDict): - attempt_duration_seconds: NotRequired[pulumi.Input[int]] - """ - The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - - For array jobs, the timeout applies to the child jobs, not to the parent array job. - - For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - """ -elif False: - JobDefinitionTimeoutArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class JobDefinitionTimeoutArgs: - def __init__(__self__, *, - attempt_duration_seconds: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[int] attempt_duration_seconds: The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - - For array jobs, the timeout applies to the child jobs, not to the parent array job. - - For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - """ - if attempt_duration_seconds is not None: - pulumi.set(__self__, "attempt_duration_seconds", attempt_duration_seconds) - - @property - @pulumi.getter(name="attemptDurationSeconds") - def attempt_duration_seconds(self) -> Optional[pulumi.Input[int]]: - """ - The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - - For array jobs, the timeout applies to the child jobs, not to the parent array job. - - For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - """ - return pulumi.get(self, "attempt_duration_seconds") - - @attempt_duration_seconds.setter - def attempt_duration_seconds(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "attempt_duration_seconds", value) - - if not MYPY: class JobDefinitionTmpfsArgsDict(TypedDict): container_path: pulumi.Input[str] @@ -5280,50 +5701,12 @@ def soft_limit(self, value: pulumi.Input[int]): if not MYPY: - class JobDefinitionVolumesHostArgsDict(TypedDict): - source_path: NotRequired[pulumi.Input[str]] - """ - The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - - > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - """ -elif False: - JobDefinitionVolumesHostArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class JobDefinitionVolumesHostArgs: - def __init__(__self__, *, - source_path: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] source_path: The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - - > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - """ - if source_path is not None: - pulumi.set(__self__, "source_path", source_path) - - @property - @pulumi.getter(name="sourcePath") - def source_path(self) -> Optional[pulumi.Input[str]]: - """ - The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - - > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - """ - return pulumi.get(self, "source_path") - - @source_path.setter - def source_path(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "source_path", value) - - -if not MYPY: - class JobDefinitionVolumesArgsDict(TypedDict): + class JobDefinitionVolumeArgsDict(TypedDict): efs_volume_configuration: NotRequired[pulumi.Input['JobDefinitionEfsVolumeConfigurationArgsDict']] """ - This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . + This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . """ - host: NotRequired[pulumi.Input['JobDefinitionVolumesHostArgsDict']] + host: NotRequired[pulumi.Input['JobDefinitionHostArgsDict']] """ The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. @@ -5334,17 +5717,17 @@ class JobDefinitionVolumesArgsDict(TypedDict): The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . """ elif False: - JobDefinitionVolumesArgsDict: TypeAlias = Mapping[str, Any] + JobDefinitionVolumeArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class JobDefinitionVolumesArgs: +class JobDefinitionVolumeArgs: def __init__(__self__, *, efs_volume_configuration: Optional[pulumi.Input['JobDefinitionEfsVolumeConfigurationArgs']] = None, - host: Optional[pulumi.Input['JobDefinitionVolumesHostArgs']] = None, + host: Optional[pulumi.Input['JobDefinitionHostArgs']] = None, name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input['JobDefinitionEfsVolumeConfigurationArgs'] efs_volume_configuration: This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . - :param pulumi.Input['JobDefinitionVolumesHostArgs'] host: The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. + :param pulumi.Input['JobDefinitionEfsVolumeConfigurationArgs'] efs_volume_configuration: This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . + :param pulumi.Input['JobDefinitionHostArgs'] host: The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. :param pulumi.Input[str] name: The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . @@ -5360,7 +5743,7 @@ def __init__(__self__, *, @pulumi.getter(name="efsVolumeConfiguration") def efs_volume_configuration(self) -> Optional[pulumi.Input['JobDefinitionEfsVolumeConfigurationArgs']]: """ - This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . + This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . """ return pulumi.get(self, "efs_volume_configuration") @@ -5370,7 +5753,7 @@ def efs_volume_configuration(self, value: Optional[pulumi.Input['JobDefinitionEf @property @pulumi.getter - def host(self) -> Optional[pulumi.Input['JobDefinitionVolumesHostArgs']]: + def host(self) -> Optional[pulumi.Input['JobDefinitionHostArgs']]: """ The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. @@ -5379,7 +5762,7 @@ def host(self) -> Optional[pulumi.Input['JobDefinitionVolumesHostArgs']]: return pulumi.get(self, "host") @host.setter - def host(self, value: Optional[pulumi.Input['JobDefinitionVolumesHostArgs']]): + def host(self, value: Optional[pulumi.Input['JobDefinitionHostArgs']]): pulumi.set(self, "host", value) @property diff --git a/sdk/python/pulumi_aws_native/batch/get_job_definition.py b/sdk/python/pulumi_aws_native/batch/get_job_definition.py index ef846e7c7c..6a3825ca7d 100644 --- a/sdk/python/pulumi_aws_native/batch/get_job_definition.py +++ b/sdk/python/pulumi_aws_native/batch/get_job_definition.py @@ -24,7 +24,7 @@ @pulumi.output_type class GetJobDefinitionResult: - def __init__(__self__, container_properties=None, ecs_properties=None, eks_properties=None, id=None, node_properties=None, parameters=None, platform_capabilities=None, propagate_tags=None, retry_strategy=None, scheduling_priority=None, tags=None, timeout=None, type=None): + def __init__(__self__, container_properties=None, ecs_properties=None, eks_properties=None, node_properties=None, parameters=None, platform_capabilities=None, propagate_tags=None, retry_strategy=None, scheduling_priority=None, tags=None, timeout=None, type=None): if container_properties and not isinstance(container_properties, dict): raise TypeError("Expected argument 'container_properties' to be a dict") pulumi.set(__self__, "container_properties", container_properties) @@ -34,9 +34,6 @@ def __init__(__self__, container_properties=None, ecs_properties=None, eks_prope if eks_properties and not isinstance(eks_properties, dict): raise TypeError("Expected argument 'eks_properties' to be a dict") pulumi.set(__self__, "eks_properties", eks_properties) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) if node_properties and not isinstance(node_properties, dict): raise TypeError("Expected argument 'node_properties' to be a dict") pulumi.set(__self__, "node_properties", node_properties) @@ -89,11 +86,6 @@ def eks_properties(self) -> Optional['outputs.JobDefinitionEksProperties']: """ return pulumi.get(self, "eks_properties") - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - @property @pulumi.getter(name="nodeProperties") def node_properties(self) -> Optional['outputs.JobDefinitionNodeProperties']: @@ -106,11 +98,9 @@ def node_properties(self) -> Optional['outputs.JobDefinitionNodeProperties']: @property @pulumi.getter - def parameters(self) -> Optional[Any]: + def parameters(self) -> Optional[Mapping[str, str]]: """ Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. """ return pulumi.get(self, "parameters") @@ -148,17 +138,15 @@ def scheduling_priority(self) -> Optional[int]: @property @pulumi.getter - def tags(self) -> Optional[Any]: + def tags(self) -> Optional[Mapping[str, str]]: """ - The tags that are applied to the job definition. - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + A key-value pair to associate with a resource. """ return pulumi.get(self, "tags") @property @pulumi.getter - def timeout(self) -> Optional['outputs.JobDefinitionTimeout']: + def timeout(self) -> Optional['outputs.JobDefinitionJobTimeout']: """ The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. """ @@ -187,7 +175,6 @@ def __await__(self): container_properties=self.container_properties, ecs_properties=self.ecs_properties, eks_properties=self.eks_properties, - id=self.id, node_properties=self.node_properties, parameters=self.parameters, platform_capabilities=self.platform_capabilities, @@ -199,13 +186,16 @@ def __await__(self): type=self.type) -def get_job_definition(id: Optional[str] = None, +def get_job_definition(job_definition_name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetJobDefinitionResult: """ Resource Type definition for AWS::Batch::JobDefinition + + + :param str job_definition_name: The name of the job definition. """ __args__ = dict() - __args__['id'] = id + __args__['jobDefinitionName'] = job_definition_name opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:batch:getJobDefinition', __args__, opts=opts, typ=GetJobDefinitionResult).value @@ -213,7 +203,6 @@ def get_job_definition(id: Optional[str] = None, container_properties=pulumi.get(__ret__, 'container_properties'), ecs_properties=pulumi.get(__ret__, 'ecs_properties'), eks_properties=pulumi.get(__ret__, 'eks_properties'), - id=pulumi.get(__ret__, 'id'), node_properties=pulumi.get(__ret__, 'node_properties'), parameters=pulumi.get(__ret__, 'parameters'), platform_capabilities=pulumi.get(__ret__, 'platform_capabilities'), @@ -223,20 +212,22 @@ def get_job_definition(id: Optional[str] = None, tags=pulumi.get(__ret__, 'tags'), timeout=pulumi.get(__ret__, 'timeout'), type=pulumi.get(__ret__, 'type')) -def get_job_definition_output(id: Optional[pulumi.Input[str]] = None, +def get_job_definition_output(job_definition_name: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetJobDefinitionResult]: """ Resource Type definition for AWS::Batch::JobDefinition + + + :param str job_definition_name: The name of the job definition. """ __args__ = dict() - __args__['id'] = id + __args__['jobDefinitionName'] = job_definition_name opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('aws-native:batch:getJobDefinition', __args__, opts=opts, typ=GetJobDefinitionResult) return __ret__.apply(lambda __response__: GetJobDefinitionResult( container_properties=pulumi.get(__response__, 'container_properties'), ecs_properties=pulumi.get(__response__, 'ecs_properties'), eks_properties=pulumi.get(__response__, 'eks_properties'), - id=pulumi.get(__response__, 'id'), node_properties=pulumi.get(__response__, 'node_properties'), parameters=pulumi.get(__response__, 'parameters'), platform_capabilities=pulumi.get(__response__, 'platform_capabilities'), diff --git a/sdk/python/pulumi_aws_native/batch/job_definition.py b/sdk/python/pulumi_aws_native/batch/job_definition.py index 73da9852ef..ea97912b25 100644 --- a/sdk/python/pulumi_aws_native/batch/job_definition.py +++ b/sdk/python/pulumi_aws_native/batch/job_definition.py @@ -27,13 +27,13 @@ def __init__(__self__, *, eks_properties: Optional[pulumi.Input['JobDefinitionEksPropertiesArgs']] = None, job_definition_name: Optional[pulumi.Input[str]] = None, node_properties: Optional[pulumi.Input['JobDefinitionNodePropertiesArgs']] = None, - parameters: Optional[Any] = None, + parameters: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, platform_capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, propagate_tags: Optional[pulumi.Input[bool]] = None, retry_strategy: Optional[pulumi.Input['JobDefinitionRetryStrategyArgs']] = None, scheduling_priority: Optional[pulumi.Input[int]] = None, - tags: Optional[Any] = None, - timeout: Optional[pulumi.Input['JobDefinitionTimeoutArgs']] = None): + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeout: Optional[pulumi.Input['JobDefinitionJobTimeoutArgs']] = None): """ The set of arguments for constructing a JobDefinition resource. :param pulumi.Input[str] type: The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . @@ -49,17 +49,13 @@ def __init__(__self__, *, :param pulumi.Input['JobDefinitionNodePropertiesArgs'] node_properties: An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` . > If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead. - :param Any parameters: Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . :param pulumi.Input[Sequence[pulumi.Input[str]]] platform_capabilities: The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . :param pulumi.Input[bool] propagate_tags: Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the `FAILED` state. :param pulumi.Input['JobDefinitionRetryStrategyArgs'] retry_strategy: The retry strategy to use for failed jobs that are submitted with this job definition. :param pulumi.Input[int] scheduling_priority: The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. - :param Any tags: The tags that are applied to the job definition. - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - :param pulumi.Input['JobDefinitionTimeoutArgs'] timeout: The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A key-value pair to associate with a resource. + :param pulumi.Input['JobDefinitionJobTimeoutArgs'] timeout: The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. """ pulumi.set(__self__, "type", type) if container_properties is not None: @@ -168,16 +164,14 @@ def node_properties(self, value: Optional[pulumi.Input['JobDefinitionNodePropert @property @pulumi.getter - def parameters(self) -> Optional[Any]: + def parameters(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. """ return pulumi.get(self, "parameters") @parameters.setter - def parameters(self, value: Optional[Any]): + def parameters(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): pulumi.set(self, "parameters", value) @property @@ -230,28 +224,26 @@ def scheduling_priority(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter - def tags(self) -> Optional[Any]: + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ - The tags that are applied to the job definition. - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + A key-value pair to associate with a resource. """ return pulumi.get(self, "tags") @tags.setter - def tags(self, value: Optional[Any]): + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): pulumi.set(self, "tags", value) @property @pulumi.getter - def timeout(self) -> Optional[pulumi.Input['JobDefinitionTimeoutArgs']]: + def timeout(self) -> Optional[pulumi.Input['JobDefinitionJobTimeoutArgs']]: """ The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. """ return pulumi.get(self, "timeout") @timeout.setter - def timeout(self, value: Optional[pulumi.Input['JobDefinitionTimeoutArgs']]): + def timeout(self, value: Optional[pulumi.Input['JobDefinitionJobTimeoutArgs']]): pulumi.set(self, "timeout", value) @@ -265,13 +257,13 @@ def __init__(__self__, eks_properties: Optional[pulumi.Input[Union['JobDefinitionEksPropertiesArgs', 'JobDefinitionEksPropertiesArgsDict']]] = None, job_definition_name: Optional[pulumi.Input[str]] = None, node_properties: Optional[pulumi.Input[Union['JobDefinitionNodePropertiesArgs', 'JobDefinitionNodePropertiesArgsDict']]] = None, - parameters: Optional[Any] = None, + parameters: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, platform_capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, propagate_tags: Optional[pulumi.Input[bool]] = None, retry_strategy: Optional[pulumi.Input[Union['JobDefinitionRetryStrategyArgs', 'JobDefinitionRetryStrategyArgsDict']]] = None, scheduling_priority: Optional[pulumi.Input[int]] = None, - tags: Optional[Any] = None, - timeout: Optional[pulumi.Input[Union['JobDefinitionTimeoutArgs', 'JobDefinitionTimeoutArgsDict']]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeout: Optional[pulumi.Input[Union['JobDefinitionJobTimeoutArgs', 'JobDefinitionJobTimeoutArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -286,17 +278,13 @@ def __init__(__self__, :param pulumi.Input[Union['JobDefinitionNodePropertiesArgs', 'JobDefinitionNodePropertiesArgsDict']] node_properties: An object with properties that are specific to multi-node parallel jobs. When `nodeProperties` is used in the job definition, it can't be used in addition to `containerProperties` , `ecsProperties` , or `eksProperties` . > If the job runs on Fargate resources, don't specify `nodeProperties` . Use `containerProperties` instead. - :param Any parameters: Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . :param pulumi.Input[Sequence[pulumi.Input[str]]] platform_capabilities: The platform capabilities required by the job definition. If no value is specified, it defaults to `EC2` . Jobs run on Fargate resources specify `FARGATE` . :param pulumi.Input[bool] propagate_tags: Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the `FAILED` state. :param pulumi.Input[Union['JobDefinitionRetryStrategyArgs', 'JobDefinitionRetryStrategyArgsDict']] retry_strategy: The retry strategy to use for failed jobs that are submitted with this job definition. :param pulumi.Input[int] scheduling_priority: The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. - :param Any tags: The tags that are applied to the job definition. - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. - :param pulumi.Input[Union['JobDefinitionTimeoutArgs', 'JobDefinitionTimeoutArgsDict']] timeout: The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A key-value pair to associate with a resource. + :param pulumi.Input[Union['JobDefinitionJobTimeoutArgs', 'JobDefinitionJobTimeoutArgsDict']] timeout: The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. :param pulumi.Input[str] type: The type of job definition. For more information about multi-node parallel jobs, see [Creating a multi-node parallel job definition](https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) in the *AWS Batch User Guide* . - If the value is `container` , then one of the following is required: `containerProperties` , `ecsProperties` , or `eksProperties` . @@ -333,13 +321,13 @@ def _internal_init(__self__, eks_properties: Optional[pulumi.Input[Union['JobDefinitionEksPropertiesArgs', 'JobDefinitionEksPropertiesArgsDict']]] = None, job_definition_name: Optional[pulumi.Input[str]] = None, node_properties: Optional[pulumi.Input[Union['JobDefinitionNodePropertiesArgs', 'JobDefinitionNodePropertiesArgsDict']]] = None, - parameters: Optional[Any] = None, + parameters: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, platform_capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, propagate_tags: Optional[pulumi.Input[bool]] = None, retry_strategy: Optional[pulumi.Input[Union['JobDefinitionRetryStrategyArgs', 'JobDefinitionRetryStrategyArgsDict']]] = None, scheduling_priority: Optional[pulumi.Input[int]] = None, - tags: Optional[Any] = None, - timeout: Optional[pulumi.Input[Union['JobDefinitionTimeoutArgs', 'JobDefinitionTimeoutArgsDict']]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeout: Optional[pulumi.Input[Union['JobDefinitionJobTimeoutArgs', 'JobDefinitionJobTimeoutArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -365,7 +353,6 @@ def _internal_init(__self__, if type is None and not opts.urn: raise TypeError("Missing required property 'type'") __props__.__dict__["type"] = type - __props__.__dict__["aws_id"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["jobDefinitionName"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(JobDefinition, __self__).__init__( @@ -390,7 +377,6 @@ def get(resource_name: str, __props__ = JobDefinitionArgs.__new__(JobDefinitionArgs) - __props__.__dict__["aws_id"] = None __props__.__dict__["container_properties"] = None __props__.__dict__["ecs_properties"] = None __props__.__dict__["eks_properties"] = None @@ -406,11 +392,6 @@ def get(resource_name: str, __props__.__dict__["type"] = None return JobDefinition(resource_name, opts=opts, __props__=__props__) - @property - @pulumi.getter(name="awsId") - def aws_id(self) -> pulumi.Output[str]: - return pulumi.get(self, "aws_id") - @property @pulumi.getter(name="containerProperties") def container_properties(self) -> pulumi.Output[Optional['outputs.JobDefinitionContainerProperties']]: @@ -455,11 +436,9 @@ def node_properties(self) -> pulumi.Output[Optional['outputs.JobDefinitionNodePr @property @pulumi.getter - def parameters(self) -> pulumi.Output[Optional[Any]]: + def parameters(self) -> pulumi.Output[Optional[Mapping[str, str]]]: """ Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a `SubmitJob` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see [Job definition parameters](https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html) in the *AWS Batch User Guide* . - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. """ return pulumi.get(self, "parameters") @@ -497,17 +476,15 @@ def scheduling_priority(self) -> pulumi.Output[Optional[int]]: @property @pulumi.getter - def tags(self) -> pulumi.Output[Optional[Any]]: + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: """ - The tags that are applied to the job definition. - - Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Batch::JobDefinition` for more information about the expected schema for this property. + A key-value pair to associate with a resource. """ return pulumi.get(self, "tags") @property @pulumi.getter - def timeout(self) -> pulumi.Output[Optional['outputs.JobDefinitionTimeout']]: + def timeout(self) -> pulumi.Output[Optional['outputs.JobDefinitionJobTimeout']]: """ The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, AWS Batch terminates your jobs if they aren't finished. """ diff --git a/sdk/python/pulumi_aws_native/batch/outputs.py b/sdk/python/pulumi_aws_native/batch/outputs.py index 69a4053880..98d72c7665 100644 --- a/sdk/python/pulumi_aws_native/batch/outputs.py +++ b/sdk/python/pulumi_aws_native/batch/outputs.py @@ -23,11 +23,12 @@ 'ComputeEnvironmentLaunchTemplateSpecification', 'ComputeEnvironmentLaunchTemplateSpecificationOverride', 'ComputeEnvironmentUpdatePolicy', - 'JobDefinitionAuthorizationConfig', 'JobDefinitionContainerProperties', + 'JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties', 'JobDefinitionDevice', 'JobDefinitionEcsProperties', 'JobDefinitionEcsTaskProperties', + 'JobDefinitionEfsAuthorizationConfig', 'JobDefinitionEfsVolumeConfiguration', 'JobDefinitionEksContainer', 'JobDefinitionEksContainerEnvironmentVariable', @@ -36,22 +37,26 @@ 'JobDefinitionEksContainerVolumeMount', 'JobDefinitionEksEmptyDir', 'JobDefinitionEksHostPath', + 'JobDefinitionEksMetadata', + 'JobDefinitionEksPodProperties', 'JobDefinitionEksProperties', 'JobDefinitionEksSecret', 'JobDefinitionEksVolume', 'JobDefinitionEnvironment', 'JobDefinitionEphemeralStorage', 'JobDefinitionEvaluateOnExit', - 'JobDefinitionFargatePlatformConfiguration', + 'JobDefinitionHost', 'JobDefinitionImagePullSecret', + 'JobDefinitionJobTimeout', 'JobDefinitionLinuxParameters', 'JobDefinitionLogConfiguration', - 'JobDefinitionMetadata', - 'JobDefinitionMountPoints', + 'JobDefinitionMountPoint', + 'JobDefinitionMultiNodeContainerProperties', + 'JobDefinitionMultiNodeEcsProperties', + 'JobDefinitionMultiNodeEcsTaskProperties', 'JobDefinitionNetworkConfiguration', 'JobDefinitionNodeProperties', 'JobDefinitionNodeRangeProperty', - 'JobDefinitionPodProperties', 'JobDefinitionRepositoryCredentials', 'JobDefinitionResourceRequirement', 'JobDefinitionRetryStrategy', @@ -59,11 +64,9 @@ 'JobDefinitionSecret', 'JobDefinitionTaskContainerDependency', 'JobDefinitionTaskContainerProperties', - 'JobDefinitionTimeout', 'JobDefinitionTmpfs', 'JobDefinitionUlimit', - 'JobDefinitionVolumes', - 'JobDefinitionVolumesHost', + 'JobDefinitionVolume', 'JobQueueComputeEnvironmentOrder', 'JobQueueJobStateTimeLimitAction', 'SchedulingPolicyFairsharePolicy', @@ -892,54 +895,6 @@ def terminate_jobs_on_update(self) -> Optional[bool]: return pulumi.get(self, "terminate_jobs_on_update") -@pulumi.output_type -class JobDefinitionAuthorizationConfig(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "accessPointId": - suggest = "access_point_id" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionAuthorizationConfig. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionAuthorizationConfig.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionAuthorizationConfig.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - access_point_id: Optional[str] = None, - iam: Optional[str] = None): - """ - :param str access_point_id: The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - :param str iam: Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - """ - if access_point_id is not None: - pulumi.set(__self__, "access_point_id", access_point_id) - if iam is not None: - pulumi.set(__self__, "iam", iam) - - @property - @pulumi.getter(name="accessPointId") - def access_point_id(self) -> Optional[str]: - """ - The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . - """ - return pulumi.get(self, "access_point_id") - - @property - @pulumi.getter - def iam(self) -> Optional[str]: - """ - Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. - """ - return pulumi.get(self, "iam") - - @pulumi.output_type class JobDefinitionContainerProperties(dict): @staticmethod @@ -951,8 +906,6 @@ def __key_warning(key: str): suggest = "execution_role_arn" elif key == "fargatePlatformConfiguration": suggest = "fargate_platform_configuration" - elif key == "instanceType": - suggest = "instance_type" elif key == "jobRoleArn": suggest = "job_role_arn" elif key == "linuxParameters": @@ -989,13 +942,12 @@ def __init__(__self__, *, environment: Optional[Sequence['outputs.JobDefinitionEnvironment']] = None, ephemeral_storage: Optional['outputs.JobDefinitionEphemeralStorage'] = None, execution_role_arn: Optional[str] = None, - fargate_platform_configuration: Optional['outputs.JobDefinitionFargatePlatformConfiguration'] = None, - instance_type: Optional[str] = None, + fargate_platform_configuration: Optional['outputs.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties'] = None, job_role_arn: Optional[str] = None, linux_parameters: Optional['outputs.JobDefinitionLinuxParameters'] = None, log_configuration: Optional['outputs.JobDefinitionLogConfiguration'] = None, memory: Optional[int] = None, - mount_points: Optional[Sequence['outputs.JobDefinitionMountPoints']] = None, + mount_points: Optional[Sequence['outputs.JobDefinitionMountPoint']] = None, network_configuration: Optional['outputs.JobDefinitionNetworkConfiguration'] = None, privileged: Optional[bool] = None, readonly_root_filesystem: Optional[bool] = None, @@ -1006,7 +958,7 @@ def __init__(__self__, *, ulimits: Optional[Sequence['outputs.JobDefinitionUlimit']] = None, user: Optional[str] = None, vcpus: Optional[int] = None, - volumes: Optional[Sequence['outputs.JobDefinitionVolumes']] = None): + volumes: Optional[Sequence['outputs.JobDefinitionVolume']] = None): """ :param str image: Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `*repository-url* / *image* : *tag*` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to `Image` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `IMAGE` parameter of [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . @@ -1023,10 +975,7 @@ def __init__(__self__, *, > We don't recommend using plaintext environment variables for sensitive information, such as credential data. > Environment variables cannot start with " `AWS_BATCH` ". This naming convention is reserved for variables that AWS Batch sets. :param 'JobDefinitionEphemeralStorage' ephemeral_storage: The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate . :param str execution_role_arn: The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see [AWS Batch execution IAM role](https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) in the *AWS Batch User Guide* . - :param 'JobDefinitionFargatePlatformConfiguration' fargate_platform_configuration: The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. - :param str instance_type: The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - - > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. + :param 'JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties' fargate_platform_configuration: The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. :param str job_role_arn: The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see [IAM roles for tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide* . :param 'JobDefinitionLinuxParameters' linux_parameters: Linux-specific modifications that are applied to the container, such as details for device mappings. :param 'JobDefinitionLogConfiguration' log_configuration: The log configuration specification for the container. @@ -1039,7 +988,7 @@ def __init__(__self__, *, > The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before containers placed on that instance can use these log configuration options. For more information, see [Amazon ECS container agent configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide* . :param int memory: This parameter is deprecated, use `resourceRequirements` to specify the memory requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs that run on Amazon EC2 resources, it specifies the memory hard limit (in MiB) for a container. If your container attempts to exceed the specified number, it's terminated. You must specify at least 4 MiB of memory for a job using this parameter. The memory hard limit can be specified in several places. It must be specified for each node at least once. - :param Sequence['JobDefinitionMountPoints'] mount_points: The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . + :param Sequence['JobDefinitionMountPoint'] mount_points: The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . :param 'JobDefinitionNetworkConfiguration' network_configuration: The network configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. :param bool privileged: When this parameter is true, the container is given elevated permissions on the host container instance (similar to the `root` user). This parameter maps to `Privileged` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--privileged` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The default value is false. @@ -1056,7 +1005,7 @@ def __init__(__self__, *, :param int vcpus: This parameter is deprecated, use `resourceRequirements` to specify the vCPU requirements for the job definition. It's not supported for jobs running on Fargate resources. For jobs running on Amazon EC2 resources, it specifies the number of vCPUs reserved for the job. Each vCPU is equivalent to 1,024 CPU shares. This parameter maps to `CpuShares` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--cpu-shares` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . The number of vCPUs must be specified but can be specified in several places. You must specify it at least once for each node. - :param Sequence['JobDefinitionVolumes'] volumes: A list of data volumes used in a job. + :param Sequence['JobDefinitionVolume'] volumes: A list of data volumes used in a job. """ pulumi.set(__self__, "image", image) if command is not None: @@ -1069,8 +1018,6 @@ def __init__(__self__, *, pulumi.set(__self__, "execution_role_arn", execution_role_arn) if fargate_platform_configuration is not None: pulumi.set(__self__, "fargate_platform_configuration", fargate_platform_configuration) - if instance_type is not None: - pulumi.set(__self__, "instance_type", instance_type) if job_role_arn is not None: pulumi.set(__self__, "job_role_arn", job_role_arn) if linux_parameters is not None: @@ -1156,22 +1103,12 @@ def execution_role_arn(self) -> Optional[str]: @property @pulumi.getter(name="fargatePlatformConfiguration") - def fargate_platform_configuration(self) -> Optional['outputs.JobDefinitionFargatePlatformConfiguration']: + def fargate_platform_configuration(self) -> Optional['outputs.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties']: """ The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. """ return pulumi.get(self, "fargate_platform_configuration") - @property - @pulumi.getter(name="instanceType") - def instance_type(self) -> Optional[str]: - """ - The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type. - - > This parameter isn't applicable to single-node container jobs or jobs that run on Fargate resources, and shouldn't be provided. - """ - return pulumi.get(self, "instance_type") - @property @pulumi.getter(name="jobRoleArn") def job_role_arn(self) -> Optional[str]: @@ -1214,7 +1151,7 @@ def memory(self) -> Optional[int]: @property @pulumi.getter(name="mountPoints") - def mount_points(self) -> Optional[Sequence['outputs.JobDefinitionMountPoints']]: + def mount_points(self) -> Optional[Sequence['outputs.JobDefinitionMountPoint']]: """ The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/) and the `--volume` option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/) . """ @@ -1308,13 +1245,49 @@ def vcpus(self) -> Optional[int]: @property @pulumi.getter - def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolumes']]: + def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolume']]: """ A list of data volumes used in a job. """ return pulumi.get(self, "volumes") +@pulumi.output_type +class JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties(dict): + """ + The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "platformVersion": + suggest = "platform_version" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + platform_version: Optional[str] = None): + """ + The platform configuration for jobs that are running on Fargate resources. Jobs that are running on Amazon EC2 resources must not specify this parameter. + """ + if platform_version is not None: + pulumi.set(__self__, "platform_version", platform_version) + + @property + @pulumi.getter(name="platformVersion") + def platform_version(self) -> Optional[str]: + return pulumi.get(self, "platform_version") + + @pulumi.output_type class JobDefinitionDevice(dict): @staticmethod @@ -1459,7 +1432,7 @@ def __init__(__self__, *, platform_version: Optional[str] = None, runtime_platform: Optional['outputs.JobDefinitionRuntimePlatform'] = None, task_role_arn: Optional[str] = None, - volumes: Optional[Sequence['outputs.JobDefinitionVolumes']] = None): + volumes: Optional[Sequence['outputs.JobDefinitionVolume']] = None): """ :param Sequence['JobDefinitionTaskContainerProperties'] containers: This object is a list of containers. :param 'JobDefinitionEphemeralStorage' ephemeral_storage: The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate . @@ -1486,7 +1459,7 @@ def __init__(__self__, *, :param str task_role_arn: The Amazon Resource Name (ARN) that's associated with the Amazon ECS task. > This is object is comparable to [ContainerProperties:jobRoleArn](https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerProperties.html) . - :param Sequence['JobDefinitionVolumes'] volumes: A list of volumes that are associated with the job. + :param Sequence['JobDefinitionVolume'] volumes: A list of volumes that are associated with the job. """ if containers is not None: pulumi.set(__self__, "containers", containers) @@ -1599,13 +1572,61 @@ def task_role_arn(self) -> Optional[str]: @property @pulumi.getter - def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolumes']]: + def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolume']]: """ A list of volumes that are associated with the job. """ return pulumi.get(self, "volumes") +@pulumi.output_type +class JobDefinitionEfsAuthorizationConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "accessPointId": + suggest = "access_point_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionEfsAuthorizationConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionEfsAuthorizationConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionEfsAuthorizationConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + access_point_id: Optional[str] = None, + iam: Optional[str] = None): + """ + :param str access_point_id: The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + :param str iam: Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + """ + if access_point_id is not None: + pulumi.set(__self__, "access_point_id", access_point_id) + if iam is not None: + pulumi.set(__self__, "iam", iam) + + @property + @pulumi.getter(name="accessPointId") + def access_point_id(self) -> Optional[str]: + """ + The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the `EFSVolumeConfiguration` must either be omitted or set to `/` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the `EFSVolumeConfiguration` . For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide* . + """ + return pulumi.get(self, "access_point_id") + + @property + @pulumi.getter + def iam(self) -> Optional[str]: + """ + Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the `EFSVolumeConfiguration` . If this parameter is omitted, the default value of `DISABLED` is used. For more information, see [Using Amazon EFS access points](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints) in the *AWS Batch User Guide* . EFS IAM authorization requires that `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is specified. + """ + return pulumi.get(self, "iam") + + @pulumi.output_type class JobDefinitionEfsVolumeConfiguration(dict): @staticmethod @@ -1635,13 +1656,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, file_system_id: str, - authorization_config: Optional['outputs.JobDefinitionAuthorizationConfig'] = None, + authorization_config: Optional['outputs.JobDefinitionEfsAuthorizationConfig'] = None, root_directory: Optional[str] = None, transit_encryption: Optional[str] = None, transit_encryption_port: Optional[int] = None): """ :param str file_system_id: The Amazon EFS file system ID to use. - :param 'JobDefinitionAuthorizationConfig' authorization_config: The authorization configuration details for the Amazon EFS file system. + :param 'JobDefinitionEfsAuthorizationConfig' authorization_config: The authorization configuration details for the Amazon EFS file system. :param str root_directory: The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying `/` has the same effect as omitting this parameter. The maximum length is 4,096 characters. > If an EFS access point is specified in the `authorizationConfig` , the root directory parameter must either be omitted or set to `/` , which enforces the path set on the Amazon EFS access point. @@ -1668,7 +1689,7 @@ def file_system_id(self) -> str: @property @pulumi.getter(name="authorizationConfig") - def authorization_config(self) -> Optional['outputs.JobDefinitionAuthorizationConfig']: + def authorization_config(self) -> Optional['outputs.JobDefinitionEfsAuthorizationConfig']: """ The authorization configuration details for the Amazon EFS file system. """ @@ -1881,17 +1902,17 @@ def value(self) -> Optional[str]: @pulumi.output_type class JobDefinitionEksContainerResourceRequirements(dict): def __init__(__self__, *, - limits: Optional[Any] = None, - requests: Optional[Any] = None): + limits: Optional[Mapping[str, str]] = None, + requests: Optional[Mapping[str, str]] = None): """ - :param Any limits: The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. + :param Mapping[str, str] limits: The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. - **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a "Mi" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . > To maximize your resource utilization, provide your jobs with as much memory as possible for the specific instance type that you are using. To learn how, see [Memory management](https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) in the *AWS Batch User Guide* . - **cpu** - The number of CPUs that's reserved for the container. Values must be an even multiple of `0.25` . `cpu` can be specified in `limits` , `requests` , or both. If `cpu` is specified in both places, then the value that's specified in `limits` must be at least as large as the value that's specified in `requests` . - **nvidia.com/gpu** - The number of GPUs that's reserved for the container. Values must be a whole integer. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both places, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . - :param Any requests: The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. + :param Mapping[str, str] requests: The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. - **memory** - The memory hard limit (in MiB) for the container, using whole integers, with a "Mi" suffix. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job. `memory` can be specified in `limits` , `requests` , or both. If `memory` is specified in both, then the value that's specified in `limits` must be equal to the value that's specified in `requests` . @@ -1906,7 +1927,7 @@ def __init__(__self__, *, @property @pulumi.getter - def limits(self) -> Optional[Any]: + def limits(self) -> Optional[Mapping[str, str]]: """ The type and quantity of the resources to reserve for the container. The values vary based on the `name` that's specified. Resources can be requested using either the `limits` or the `requests` objects. @@ -1920,7 +1941,7 @@ def limits(self) -> Optional[Any]: @property @pulumi.getter - def requests(self) -> Optional[Any]: + def requests(self) -> Optional[Mapping[str, str]]: """ The type and quantity of the resources to request for the container. The values vary based on the `name` that's specified. Resources can be requested by using either the `limits` or the `requests` objects. @@ -2173,91 +2194,268 @@ def path(self) -> Optional[str]: @pulumi.output_type -class JobDefinitionEksProperties(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "podProperties": - suggest = "pod_properties" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionEksProperties. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionEksProperties.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionEksProperties.__key_warning(key) - return super().get(key, default) - +class JobDefinitionEksMetadata(dict): def __init__(__self__, *, - pod_properties: Optional['outputs.JobDefinitionPodProperties'] = None): + labels: Optional[Mapping[str, str]] = None): """ - :param 'JobDefinitionPodProperties' pod_properties: The properties for the Kubernetes pod resources of a job. + :param Mapping[str, str] labels: Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. """ - if pod_properties is not None: - pulumi.set(__self__, "pod_properties", pod_properties) + if labels is not None: + pulumi.set(__self__, "labels", labels) @property - @pulumi.getter(name="podProperties") - def pod_properties(self) -> Optional['outputs.JobDefinitionPodProperties']: + @pulumi.getter + def labels(self) -> Optional[Mapping[str, str]]: """ - The properties for the Kubernetes pod resources of a job. + Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. """ - return pulumi.get(self, "pod_properties") + return pulumi.get(self, "labels") @pulumi.output_type -class JobDefinitionEksSecret(dict): +class JobDefinitionEksPodProperties(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "secretName": - suggest = "secret_name" + if key == "dnsPolicy": + suggest = "dns_policy" + elif key == "hostNetwork": + suggest = "host_network" + elif key == "imagePullSecrets": + suggest = "image_pull_secrets" + elif key == "initContainers": + suggest = "init_containers" + elif key == "serviceAccountName": + suggest = "service_account_name" + elif key == "shareProcessNamespace": + suggest = "share_process_namespace" if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionEksSecret. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionEksPodProperties. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - JobDefinitionEksSecret.__key_warning(key) + JobDefinitionEksPodProperties.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - JobDefinitionEksSecret.__key_warning(key) + JobDefinitionEksPodProperties.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - secret_name: str, - optional: Optional[bool] = None): + containers: Optional[Sequence['outputs.JobDefinitionEksContainer']] = None, + dns_policy: Optional[str] = None, + host_network: Optional[bool] = None, + image_pull_secrets: Optional[Sequence['outputs.JobDefinitionImagePullSecret']] = None, + init_containers: Optional[Sequence['outputs.JobDefinitionEksContainer']] = None, + metadata: Optional['outputs.JobDefinitionEksMetadata'] = None, + service_account_name: Optional[str] = None, + share_process_namespace: Optional[bool] = None, + volumes: Optional[Sequence['outputs.JobDefinitionEksVolume']] = None): """ - :param str secret_name: The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . - :param bool optional: Specifies whether the secret or the secret's keys must be defined. + :param Sequence['JobDefinitionEksContainer'] containers: The properties of the container that's used on the Amazon EKS pod. + + > This object is limited to 10 elements. + :param str dns_policy: The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + + Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` + :param bool host_network: Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + :param Sequence['JobDefinitionImagePullSecret'] image_pull_secrets: References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + + `ImagePullSecret$name` is required when this object is used. + :param Sequence['JobDefinitionEksContainer'] init_containers: These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + + > This object is limited to 10 elements. + :param 'JobDefinitionEksMetadata' metadata: Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + :param str service_account_name: The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + :param bool share_process_namespace: Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + :param Sequence['JobDefinitionEksVolume'] volumes: Specifies the volumes for a job definition that uses Amazon EKS resources. """ - pulumi.set(__self__, "secret_name", secret_name) - if optional is not None: - pulumi.set(__self__, "optional", optional) + if containers is not None: + pulumi.set(__self__, "containers", containers) + if dns_policy is not None: + pulumi.set(__self__, "dns_policy", dns_policy) + if host_network is not None: + pulumi.set(__self__, "host_network", host_network) + if image_pull_secrets is not None: + pulumi.set(__self__, "image_pull_secrets", image_pull_secrets) + if init_containers is not None: + pulumi.set(__self__, "init_containers", init_containers) + if metadata is not None: + pulumi.set(__self__, "metadata", metadata) + if service_account_name is not None: + pulumi.set(__self__, "service_account_name", service_account_name) + if share_process_namespace is not None: + pulumi.set(__self__, "share_process_namespace", share_process_namespace) + if volumes is not None: + pulumi.set(__self__, "volumes", volumes) @property - @pulumi.getter(name="secretName") - def secret_name(self) -> str: + @pulumi.getter + def containers(self) -> Optional[Sequence['outputs.JobDefinitionEksContainer']]: """ - The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + The properties of the container that's used on the Amazon EKS pod. + + > This object is limited to 10 elements. """ - return pulumi.get(self, "secret_name") + return pulumi.get(self, "containers") @property - @pulumi.getter - def optional(self) -> Optional[bool]: + @pulumi.getter(name="dnsPolicy") + def dns_policy(self) -> Optional[str]: """ - Specifies whether the secret or the secret's keys must be defined. + The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . + + Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` """ - return pulumi.get(self, "optional") + return pulumi.get(self, "dns_policy") + @property + @pulumi.getter(name="hostNetwork") + def host_network(self) -> Optional[bool]: + """ + Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . + """ + return pulumi.get(self, "host_network") -@pulumi.output_type -class JobDefinitionEksVolume(dict): - @staticmethod + @property + @pulumi.getter(name="imagePullSecrets") + def image_pull_secrets(self) -> Optional[Sequence['outputs.JobDefinitionImagePullSecret']]: + """ + References a Kubernetes secret resource. It holds a list of secrets. These secrets help to gain access to pull an images from a private registry. + + `ImagePullSecret$name` is required when this object is used. + """ + return pulumi.get(self, "image_pull_secrets") + + @property + @pulumi.getter(name="initContainers") + def init_containers(self) -> Optional[Sequence['outputs.JobDefinitionEksContainer']]: + """ + These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . + + > This object is limited to 10 elements. + """ + return pulumi.get(self, "init_containers") + + @property + @pulumi.getter + def metadata(self) -> Optional['outputs.JobDefinitionEksMetadata']: + """ + Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . + """ + return pulumi.get(self, "metadata") + + @property + @pulumi.getter(name="serviceAccountName") + def service_account_name(self) -> Optional[str]: + """ + The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . + """ + return pulumi.get(self, "service_account_name") + + @property + @pulumi.getter(name="shareProcessNamespace") + def share_process_namespace(self) -> Optional[bool]: + """ + Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . + """ + return pulumi.get(self, "share_process_namespace") + + @property + @pulumi.getter + def volumes(self) -> Optional[Sequence['outputs.JobDefinitionEksVolume']]: + """ + Specifies the volumes for a job definition that uses Amazon EKS resources. + """ + return pulumi.get(self, "volumes") + + +@pulumi.output_type +class JobDefinitionEksProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "podProperties": + suggest = "pod_properties" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionEksProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionEksProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionEksProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + pod_properties: Optional['outputs.JobDefinitionEksPodProperties'] = None): + """ + :param 'JobDefinitionEksPodProperties' pod_properties: The properties for the Kubernetes pod resources of a job. + """ + if pod_properties is not None: + pulumi.set(__self__, "pod_properties", pod_properties) + + @property + @pulumi.getter(name="podProperties") + def pod_properties(self) -> Optional['outputs.JobDefinitionEksPodProperties']: + """ + The properties for the Kubernetes pod resources of a job. + """ + return pulumi.get(self, "pod_properties") + + +@pulumi.output_type +class JobDefinitionEksSecret(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "secretName": + suggest = "secret_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionEksSecret. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionEksSecret.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionEksSecret.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + secret_name: str, + optional: Optional[bool] = None): + """ + :param str secret_name: The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + :param bool optional: Specifies whether the secret or the secret's keys must be defined. + """ + pulumi.set(__self__, "secret_name", secret_name) + if optional is not None: + pulumi.set(__self__, "optional", optional) + + @property + @pulumi.getter(name="secretName") + def secret_name(self) -> str: + """ + The name of the secret. The name must be allowed as a DNS subdomain name. For more information, see [DNS subdomain names](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names) in the *Kubernetes documentation* . + """ + return pulumi.get(self, "secret_name") + + @property + @pulumi.getter + def optional(self) -> Optional[bool]: + """ + Specifies whether the secret or the secret's keys must be defined. + """ + return pulumi.get(self, "optional") + + +@pulumi.output_type +class JobDefinitionEksVolume(dict): + @staticmethod def __key_warning(key: str): suggest = None if key == "emptyDir": @@ -2474,59 +2672,108 @@ def on_status_reason(self) -> Optional[str]: @pulumi.output_type -class JobDefinitionFargatePlatformConfiguration(dict): +class JobDefinitionHost(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "platformVersion": - suggest = "platform_version" + if key == "sourcePath": + suggest = "source_path" if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionFargatePlatformConfiguration. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionHost. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - JobDefinitionFargatePlatformConfiguration.__key_warning(key) + JobDefinitionHost.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - JobDefinitionFargatePlatformConfiguration.__key_warning(key) + JobDefinitionHost.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - platform_version: Optional[str] = None): + source_path: Optional[str] = None): """ - :param str platform_version: The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . + :param str source_path: The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + + > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. """ - if platform_version is not None: - pulumi.set(__self__, "platform_version", platform_version) + if source_path is not None: + pulumi.set(__self__, "source_path", source_path) @property - @pulumi.getter(name="platformVersion") - def platform_version(self) -> Optional[str]: + @pulumi.getter(name="sourcePath") + def source_path(self) -> Optional[str]: """ - The AWS Fargate platform version where the jobs are running. A platform version is specified only for jobs that are running on Fargate resources. If one isn't specified, the `LATEST` platform version is used by default. This uses a recent, approved version of the AWS Fargate platform for compute resources. For more information, see [AWS Fargate platform versions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) in the *Amazon Elastic Container Service Developer Guide* . + The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. + + > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. """ - return pulumi.get(self, "platform_version") + return pulumi.get(self, "source_path") @pulumi.output_type class JobDefinitionImagePullSecret(dict): def __init__(__self__, *, - name: str): + name: Optional[str] = None): """ :param str name: Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. """ - pulumi.set(__self__, "name", name) + if name is not None: + pulumi.set(__self__, "name", name) @property @pulumi.getter - def name(self) -> str: + def name(self) -> Optional[str]: """ Provides a unique identifier for the `ImagePullSecret` . This object is required when `EksPodProperties$imagePullSecrets` is used. """ return pulumi.get(self, "name") +@pulumi.output_type +class JobDefinitionJobTimeout(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "attemptDurationSeconds": + suggest = "attempt_duration_seconds" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionJobTimeout. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionJobTimeout.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionJobTimeout.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + attempt_duration_seconds: Optional[int] = None): + """ + :param int attempt_duration_seconds: The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + + For array jobs, the timeout applies to the child jobs, not to the parent array job. + + For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + """ + if attempt_duration_seconds is not None: + pulumi.set(__self__, "attempt_duration_seconds", attempt_duration_seconds) + + @property + @pulumi.getter(name="attemptDurationSeconds") + def attempt_duration_seconds(self) -> Optional[int]: + """ + The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. + + For array jobs, the timeout applies to the child jobs, not to the parent array job. + + For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. + """ + return pulumi.get(self, "attempt_duration_seconds") + + @pulumi.output_type class JobDefinitionLinuxParameters(dict): @staticmethod @@ -2690,7 +2937,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, log_driver: str, - options: Optional[Any] = None, + options: Optional[Mapping[str, str]] = None, secret_options: Optional[Sequence['outputs.JobDefinitionSecret']] = None): """ :param str log_driver: The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. @@ -2710,7 +2957,7 @@ def __init__(__self__, *, > If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` - :param Any options: The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` + :param Mapping[str, str] options: The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` :param Sequence['JobDefinitionSecret'] secret_options: The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) in the *AWS Batch User Guide* . """ pulumi.set(__self__, "log_driver", log_driver) @@ -2745,7 +2992,7 @@ def log_driver(self) -> str: @property @pulumi.getter - def options(self) -> Optional[Any]: + def options(self) -> Optional[Mapping[str, str]]: """ The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: `sudo docker version | grep "Server API version"` """ @@ -2761,26 +3008,7 @@ def secret_options(self) -> Optional[Sequence['outputs.JobDefinitionSecret']]: @pulumi.output_type -class JobDefinitionMetadata(dict): - def __init__(__self__, *, - labels: Optional[Any] = None): - """ - :param Any labels: Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. - """ - if labels is not None: - pulumi.set(__self__, "labels", labels) - - @property - @pulumi.getter - def labels(self) -> Optional[Any]: - """ - Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object. - """ - return pulumi.get(self, "labels") - - -@pulumi.output_type -class JobDefinitionMountPoints(dict): +class JobDefinitionMountPoint(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -2792,14 +3020,14 @@ def __key_warning(key: str): suggest = "source_volume" if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionMountPoints. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionMountPoint. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - JobDefinitionMountPoints.__key_warning(key) + JobDefinitionMountPoint.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - JobDefinitionMountPoints.__key_warning(key) + JobDefinitionMountPoint.__key_warning(key) return super().get(key, default) def __init__(__self__, *, @@ -2819,28 +3047,342 @@ def __init__(__self__, *, pulumi.set(__self__, "source_volume", source_volume) @property - @pulumi.getter(name="containerPath") - def container_path(self) -> Optional[str]: - """ - The path on the container where the host volume is mounted. - """ - return pulumi.get(self, "container_path") + @pulumi.getter(name="containerPath") + def container_path(self) -> Optional[str]: + """ + The path on the container where the host volume is mounted. + """ + return pulumi.get(self, "container_path") + + @property + @pulumi.getter(name="readOnly") + def read_only(self) -> Optional[bool]: + """ + If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . + """ + return pulumi.get(self, "read_only") + + @property + @pulumi.getter(name="sourceVolume") + def source_volume(self) -> Optional[str]: + """ + The name of the volume to mount. + """ + return pulumi.get(self, "source_volume") + + +@pulumi.output_type +class JobDefinitionMultiNodeContainerProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "ephemeralStorage": + suggest = "ephemeral_storage" + elif key == "executionRoleArn": + suggest = "execution_role_arn" + elif key == "instanceType": + suggest = "instance_type" + elif key == "jobRoleArn": + suggest = "job_role_arn" + elif key == "linuxParameters": + suggest = "linux_parameters" + elif key == "logConfiguration": + suggest = "log_configuration" + elif key == "mountPoints": + suggest = "mount_points" + elif key == "readonlyRootFilesystem": + suggest = "readonly_root_filesystem" + elif key == "repositoryCredentials": + suggest = "repository_credentials" + elif key == "resourceRequirements": + suggest = "resource_requirements" + elif key == "runtimePlatform": + suggest = "runtime_platform" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionMultiNodeContainerProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionMultiNodeContainerProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionMultiNodeContainerProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + image: str, + command: Optional[Sequence[str]] = None, + environment: Optional[Sequence['outputs.JobDefinitionEnvironment']] = None, + ephemeral_storage: Optional['outputs.JobDefinitionEphemeralStorage'] = None, + execution_role_arn: Optional[str] = None, + instance_type: Optional[str] = None, + job_role_arn: Optional[str] = None, + linux_parameters: Optional['outputs.JobDefinitionLinuxParameters'] = None, + log_configuration: Optional['outputs.JobDefinitionLogConfiguration'] = None, + memory: Optional[int] = None, + mount_points: Optional[Sequence['outputs.JobDefinitionMountPoint']] = None, + privileged: Optional[bool] = None, + readonly_root_filesystem: Optional[bool] = None, + repository_credentials: Optional['outputs.JobDefinitionRepositoryCredentials'] = None, + resource_requirements: Optional[Sequence['outputs.JobDefinitionResourceRequirement']] = None, + runtime_platform: Optional['outputs.JobDefinitionRuntimePlatform'] = None, + secrets: Optional[Sequence['outputs.JobDefinitionSecret']] = None, + ulimits: Optional[Sequence['outputs.JobDefinitionUlimit']] = None, + user: Optional[str] = None, + vcpus: Optional[int] = None, + volumes: Optional[Sequence['outputs.JobDefinitionVolume']] = None): + pulumi.set(__self__, "image", image) + if command is not None: + pulumi.set(__self__, "command", command) + if environment is not None: + pulumi.set(__self__, "environment", environment) + if ephemeral_storage is not None: + pulumi.set(__self__, "ephemeral_storage", ephemeral_storage) + if execution_role_arn is not None: + pulumi.set(__self__, "execution_role_arn", execution_role_arn) + if instance_type is not None: + pulumi.set(__self__, "instance_type", instance_type) + if job_role_arn is not None: + pulumi.set(__self__, "job_role_arn", job_role_arn) + if linux_parameters is not None: + pulumi.set(__self__, "linux_parameters", linux_parameters) + if log_configuration is not None: + pulumi.set(__self__, "log_configuration", log_configuration) + if memory is not None: + pulumi.set(__self__, "memory", memory) + if mount_points is not None: + pulumi.set(__self__, "mount_points", mount_points) + if privileged is not None: + pulumi.set(__self__, "privileged", privileged) + if readonly_root_filesystem is not None: + pulumi.set(__self__, "readonly_root_filesystem", readonly_root_filesystem) + if repository_credentials is not None: + pulumi.set(__self__, "repository_credentials", repository_credentials) + if resource_requirements is not None: + pulumi.set(__self__, "resource_requirements", resource_requirements) + if runtime_platform is not None: + pulumi.set(__self__, "runtime_platform", runtime_platform) + if secrets is not None: + pulumi.set(__self__, "secrets", secrets) + if ulimits is not None: + pulumi.set(__self__, "ulimits", ulimits) + if user is not None: + pulumi.set(__self__, "user", user) + if vcpus is not None: + pulumi.set(__self__, "vcpus", vcpus) + if volumes is not None: + pulumi.set(__self__, "volumes", volumes) + + @property + @pulumi.getter + def image(self) -> str: + return pulumi.get(self, "image") + + @property + @pulumi.getter + def command(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "command") + + @property + @pulumi.getter + def environment(self) -> Optional[Sequence['outputs.JobDefinitionEnvironment']]: + return pulumi.get(self, "environment") + + @property + @pulumi.getter(name="ephemeralStorage") + def ephemeral_storage(self) -> Optional['outputs.JobDefinitionEphemeralStorage']: + return pulumi.get(self, "ephemeral_storage") + + @property + @pulumi.getter(name="executionRoleArn") + def execution_role_arn(self) -> Optional[str]: + return pulumi.get(self, "execution_role_arn") + + @property + @pulumi.getter(name="instanceType") + def instance_type(self) -> Optional[str]: + return pulumi.get(self, "instance_type") + + @property + @pulumi.getter(name="jobRoleArn") + def job_role_arn(self) -> Optional[str]: + return pulumi.get(self, "job_role_arn") + + @property + @pulumi.getter(name="linuxParameters") + def linux_parameters(self) -> Optional['outputs.JobDefinitionLinuxParameters']: + return pulumi.get(self, "linux_parameters") + + @property + @pulumi.getter(name="logConfiguration") + def log_configuration(self) -> Optional['outputs.JobDefinitionLogConfiguration']: + return pulumi.get(self, "log_configuration") + + @property + @pulumi.getter + def memory(self) -> Optional[int]: + return pulumi.get(self, "memory") + + @property + @pulumi.getter(name="mountPoints") + def mount_points(self) -> Optional[Sequence['outputs.JobDefinitionMountPoint']]: + return pulumi.get(self, "mount_points") + + @property + @pulumi.getter + def privileged(self) -> Optional[bool]: + return pulumi.get(self, "privileged") + + @property + @pulumi.getter(name="readonlyRootFilesystem") + def readonly_root_filesystem(self) -> Optional[bool]: + return pulumi.get(self, "readonly_root_filesystem") + + @property + @pulumi.getter(name="repositoryCredentials") + def repository_credentials(self) -> Optional['outputs.JobDefinitionRepositoryCredentials']: + return pulumi.get(self, "repository_credentials") + + @property + @pulumi.getter(name="resourceRequirements") + def resource_requirements(self) -> Optional[Sequence['outputs.JobDefinitionResourceRequirement']]: + return pulumi.get(self, "resource_requirements") + + @property + @pulumi.getter(name="runtimePlatform") + def runtime_platform(self) -> Optional['outputs.JobDefinitionRuntimePlatform']: + return pulumi.get(self, "runtime_platform") + + @property + @pulumi.getter + def secrets(self) -> Optional[Sequence['outputs.JobDefinitionSecret']]: + return pulumi.get(self, "secrets") + + @property + @pulumi.getter + def ulimits(self) -> Optional[Sequence['outputs.JobDefinitionUlimit']]: + return pulumi.get(self, "ulimits") + + @property + @pulumi.getter + def user(self) -> Optional[str]: + return pulumi.get(self, "user") + + @property + @pulumi.getter + def vcpus(self) -> Optional[int]: + return pulumi.get(self, "vcpus") + + @property + @pulumi.getter + def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolume']]: + return pulumi.get(self, "volumes") + + +@pulumi.output_type +class JobDefinitionMultiNodeEcsProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "taskProperties": + suggest = "task_properties" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionMultiNodeEcsProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionMultiNodeEcsProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionMultiNodeEcsProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + task_properties: Sequence['outputs.JobDefinitionMultiNodeEcsTaskProperties']): + pulumi.set(__self__, "task_properties", task_properties) + + @property + @pulumi.getter(name="taskProperties") + def task_properties(self) -> Sequence['outputs.JobDefinitionMultiNodeEcsTaskProperties']: + return pulumi.get(self, "task_properties") + + +@pulumi.output_type +class JobDefinitionMultiNodeEcsTaskProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "executionRoleArn": + suggest = "execution_role_arn" + elif key == "ipcMode": + suggest = "ipc_mode" + elif key == "pidMode": + suggest = "pid_mode" + elif key == "taskRoleArn": + suggest = "task_role_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionMultiNodeEcsTaskProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionMultiNodeEcsTaskProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionMultiNodeEcsTaskProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + containers: Optional[Sequence['outputs.JobDefinitionTaskContainerProperties']] = None, + execution_role_arn: Optional[str] = None, + ipc_mode: Optional[str] = None, + pid_mode: Optional[str] = None, + task_role_arn: Optional[str] = None, + volumes: Optional[Sequence['outputs.JobDefinitionVolume']] = None): + if containers is not None: + pulumi.set(__self__, "containers", containers) + if execution_role_arn is not None: + pulumi.set(__self__, "execution_role_arn", execution_role_arn) + if ipc_mode is not None: + pulumi.set(__self__, "ipc_mode", ipc_mode) + if pid_mode is not None: + pulumi.set(__self__, "pid_mode", pid_mode) + if task_role_arn is not None: + pulumi.set(__self__, "task_role_arn", task_role_arn) + if volumes is not None: + pulumi.set(__self__, "volumes", volumes) + + @property + @pulumi.getter + def containers(self) -> Optional[Sequence['outputs.JobDefinitionTaskContainerProperties']]: + return pulumi.get(self, "containers") + + @property + @pulumi.getter(name="executionRoleArn") + def execution_role_arn(self) -> Optional[str]: + return pulumi.get(self, "execution_role_arn") @property - @pulumi.getter(name="readOnly") - def read_only(self) -> Optional[bool]: - """ - If this value is `true` , the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is `false` . - """ - return pulumi.get(self, "read_only") + @pulumi.getter(name="ipcMode") + def ipc_mode(self) -> Optional[str]: + return pulumi.get(self, "ipc_mode") @property - @pulumi.getter(name="sourceVolume") - def source_volume(self) -> Optional[str]: - """ - The name of the volume to mount. - """ - return pulumi.get(self, "source_volume") + @pulumi.getter(name="pidMode") + def pid_mode(self) -> Optional[str]: + return pulumi.get(self, "pid_mode") + + @property + @pulumi.getter(name="taskRoleArn") + def task_role_arn(self) -> Optional[str]: + return pulumi.get(self, "task_role_arn") + + @property + @pulumi.getter + def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolume']]: + return pulumi.get(self, "volumes") @pulumi.output_type @@ -2967,14 +3509,14 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, target_nodes: str, - container: Optional['outputs.JobDefinitionContainerProperties'] = None, - ecs_properties: Optional['outputs.JobDefinitionEcsProperties'] = None, + container: Optional['outputs.JobDefinitionMultiNodeContainerProperties'] = None, + ecs_properties: Optional['outputs.JobDefinitionMultiNodeEcsProperties'] = None, eks_properties: Optional['outputs.JobDefinitionEksProperties'] = None, instance_types: Optional[Sequence[str]] = None): """ :param str target_nodes: The range of nodes, using node index values. A range of `0:3` indicates nodes with index values of `0` through `3` . If the starting range value is omitted ( `:n` ), then `0` is used to start the range. If the ending range value is omitted ( `n:` ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( `0:n` ). You can nest node ranges (for example, `0:10` and `4:5` ). In this case, the `4:5` range properties override the `0:10` properties. - :param 'JobDefinitionContainerProperties' container: The container details for the node range. - :param 'JobDefinitionEcsProperties' ecs_properties: This is an object that represents the properties of the node range for a multi-node parallel job. + :param 'JobDefinitionMultiNodeContainerProperties' container: The container details for the node range. + :param 'JobDefinitionMultiNodeEcsProperties' ecs_properties: This is an object that represents the properties of the node range for a multi-node parallel job. :param 'JobDefinitionEksProperties' eks_properties: This is an object that represents the properties of the node range for a multi-node parallel job. :param Sequence[str] instance_types: The instance types of the underlying host infrastructure of a multi-node parallel job. @@ -3002,7 +3544,7 @@ def target_nodes(self) -> str: @property @pulumi.getter - def container(self) -> Optional['outputs.JobDefinitionContainerProperties']: + def container(self) -> Optional['outputs.JobDefinitionMultiNodeContainerProperties']: """ The container details for the node range. """ @@ -3010,7 +3552,7 @@ def container(self) -> Optional['outputs.JobDefinitionContainerProperties']: @property @pulumi.getter(name="ecsProperties") - def ecs_properties(self) -> Optional['outputs.JobDefinitionEcsProperties']: + def ecs_properties(self) -> Optional['outputs.JobDefinitionMultiNodeEcsProperties']: """ This is an object that represents the properties of the node range for a multi-node parallel job. """ @@ -3037,156 +3579,6 @@ def instance_types(self) -> Optional[Sequence[str]]: return pulumi.get(self, "instance_types") -@pulumi.output_type -class JobDefinitionPodProperties(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "dnsPolicy": - suggest = "dns_policy" - elif key == "hostNetwork": - suggest = "host_network" - elif key == "imagePullSecrets": - suggest = "image_pull_secrets" - elif key == "initContainers": - suggest = "init_containers" - elif key == "serviceAccountName": - suggest = "service_account_name" - elif key == "shareProcessNamespace": - suggest = "share_process_namespace" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionPodProperties. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionPodProperties.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionPodProperties.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - containers: Optional[Sequence['outputs.JobDefinitionEksContainer']] = None, - dns_policy: Optional[str] = None, - host_network: Optional[bool] = None, - image_pull_secrets: Optional[Sequence['outputs.JobDefinitionImagePullSecret']] = None, - init_containers: Optional[Sequence['outputs.JobDefinitionEksContainer']] = None, - metadata: Optional['outputs.JobDefinitionMetadata'] = None, - service_account_name: Optional[str] = None, - share_process_namespace: Optional[bool] = None, - volumes: Optional[Sequence['outputs.JobDefinitionEksVolume']] = None): - """ - :param Sequence['JobDefinitionEksContainer'] containers: The properties of the container that's used on the Amazon EKS pod. - - > This object is limited to 10 elements. - :param str dns_policy: The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - - Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - :param bool host_network: Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - :param Sequence['JobDefinitionEksContainer'] init_containers: These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - - > This object is limited to 10 elements. - :param 'JobDefinitionMetadata' metadata: Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - :param str service_account_name: The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - :param bool share_process_namespace: Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - :param Sequence['JobDefinitionEksVolume'] volumes: Specifies the volumes for a job definition that uses Amazon EKS resources. - """ - if containers is not None: - pulumi.set(__self__, "containers", containers) - if dns_policy is not None: - pulumi.set(__self__, "dns_policy", dns_policy) - if host_network is not None: - pulumi.set(__self__, "host_network", host_network) - if image_pull_secrets is not None: - pulumi.set(__self__, "image_pull_secrets", image_pull_secrets) - if init_containers is not None: - pulumi.set(__self__, "init_containers", init_containers) - if metadata is not None: - pulumi.set(__self__, "metadata", metadata) - if service_account_name is not None: - pulumi.set(__self__, "service_account_name", service_account_name) - if share_process_namespace is not None: - pulumi.set(__self__, "share_process_namespace", share_process_namespace) - if volumes is not None: - pulumi.set(__self__, "volumes", volumes) - - @property - @pulumi.getter - def containers(self) -> Optional[Sequence['outputs.JobDefinitionEksContainer']]: - """ - The properties of the container that's used on the Amazon EKS pod. - - > This object is limited to 10 elements. - """ - return pulumi.get(self, "containers") - - @property - @pulumi.getter(name="dnsPolicy") - def dns_policy(self) -> Optional[str]: - """ - The DNS policy for the pod. The default value is `ClusterFirst` . If the `hostNetwork` parameter is not specified, the default is `ClusterFirstWithHostNet` . `ClusterFirst` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see [Pod's DNS policy](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) in the *Kubernetes documentation* . - - Valid values: `Default` | `ClusterFirst` | `ClusterFirstWithHostNet` - """ - return pulumi.get(self, "dns_policy") - - @property - @pulumi.getter(name="hostNetwork") - def host_network(self) -> Optional[bool]: - """ - Indicates if the pod uses the hosts' network IP address. The default value is `true` . Setting this to `false` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see [Host namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces) and [Pod networking](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking) in the *Kubernetes documentation* . - """ - return pulumi.get(self, "host_network") - - @property - @pulumi.getter(name="imagePullSecrets") - def image_pull_secrets(self) -> Optional[Sequence['outputs.JobDefinitionImagePullSecret']]: - return pulumi.get(self, "image_pull_secrets") - - @property - @pulumi.getter(name="initContainers") - def init_containers(self) -> Optional[Sequence['outputs.JobDefinitionEksContainer']]: - """ - These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see [Init Containers](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) in the *Kubernetes documentation* . - - > This object is limited to 10 elements. - """ - return pulumi.get(self, "init_containers") - - @property - @pulumi.getter - def metadata(self) -> Optional['outputs.JobDefinitionMetadata']: - """ - Metadata about the Kubernetes pod. For more information, see [Understanding Kubernetes Objects](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in the *Kubernetes documentation* . - """ - return pulumi.get(self, "metadata") - - @property - @pulumi.getter(name="serviceAccountName") - def service_account_name(self) -> Optional[str]: - """ - The name of the service account that's used to run the pod. For more information, see [Kubernetes service accounts](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html) and [Configure a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) in the *Amazon EKS User Guide* and [Configure service accounts for pods](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) in the *Kubernetes documentation* . - """ - return pulumi.get(self, "service_account_name") - - @property - @pulumi.getter(name="shareProcessNamespace") - def share_process_namespace(self) -> Optional[bool]: - """ - Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see [Share Process Namespace between Containers in a Pod](https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) . - """ - return pulumi.get(self, "share_process_namespace") - - @property - @pulumi.getter - def volumes(self) -> Optional[Sequence['outputs.JobDefinitionEksVolume']]: - """ - Specifies the volumes for a job definition that uses Amazon EKS resources. - """ - return pulumi.get(self, "volumes") - - @pulumi.output_type class JobDefinitionRepositoryCredentials(dict): @staticmethod @@ -3576,7 +3968,7 @@ def __init__(__self__, *, essential: Optional[bool] = None, linux_parameters: Optional['outputs.JobDefinitionLinuxParameters'] = None, log_configuration: Optional['outputs.JobDefinitionLogConfiguration'] = None, - mount_points: Optional[Sequence['outputs.JobDefinitionMountPoints']] = None, + mount_points: Optional[Sequence['outputs.JobDefinitionMountPoint']] = None, name: Optional[str] = None, privileged: Optional[bool] = None, readonly_root_filesystem: Optional[bool] = None, @@ -3607,7 +3999,7 @@ def __init__(__self__, *, This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version `--format '{{.Server.APIVersion}}'` > The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before containers placed on that instance can use these log configuration options. For more information, see [Amazon ECS container agent configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide* . - :param Sequence['JobDefinitionMountPoints'] mount_points: The mount points for data volumes in your container. + :param Sequence['JobDefinitionMountPoint'] mount_points: The mount points for data volumes in your container. This parameter maps to `Volumes` in the [Create a container](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate) section of the [Docker Remote API](https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/) and the [--volume](https://docs.aws.amazon.com/) option to [docker run](https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration) . @@ -3748,7 +4140,7 @@ def log_configuration(self) -> Optional['outputs.JobDefinitionLogConfiguration'] @property @pulumi.getter(name="mountPoints") - def mount_points(self) -> Optional[Sequence['outputs.JobDefinitionMountPoints']]: + def mount_points(self) -> Optional[Sequence['outputs.JobDefinitionMountPoint']]: """ The mount points for data volumes in your container. @@ -3846,50 +4238,6 @@ def user(self) -> Optional[str]: return pulumi.get(self, "user") -@pulumi.output_type -class JobDefinitionTimeout(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "attemptDurationSeconds": - suggest = "attempt_duration_seconds" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionTimeout. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionTimeout.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionTimeout.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - attempt_duration_seconds: Optional[int] = None): - """ - :param int attempt_duration_seconds: The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - - For array jobs, the timeout applies to the child jobs, not to the parent array job. - - For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - """ - if attempt_duration_seconds is not None: - pulumi.set(__self__, "attempt_duration_seconds", attempt_duration_seconds) - - @property - @pulumi.getter(name="attemptDurationSeconds") - def attempt_duration_seconds(self) -> Optional[int]: - """ - The job timeout time (in seconds) that's measured from the job attempt's `startedAt` timestamp. After this time passes, AWS Batch terminates your jobs if they aren't finished. The minimum value for the timeout is 60 seconds. - - For array jobs, the timeout applies to the child jobs, not to the parent array job. - - For multi-node parallel (MNP) jobs, the timeout applies to the whole job, not to the individual nodes. - """ - return pulumi.get(self, "attempt_duration_seconds") - - @pulumi.output_type class JobDefinitionTmpfs(dict): @staticmethod @@ -4014,7 +4362,7 @@ def soft_limit(self) -> int: @pulumi.output_type -class JobDefinitionVolumes(dict): +class JobDefinitionVolume(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -4022,23 +4370,23 @@ def __key_warning(key: str): suggest = "efs_volume_configuration" if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionVolumes. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionVolume. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - JobDefinitionVolumes.__key_warning(key) + JobDefinitionVolume.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - JobDefinitionVolumes.__key_warning(key) + JobDefinitionVolume.__key_warning(key) return super().get(key, default) def __init__(__self__, *, efs_volume_configuration: Optional['outputs.JobDefinitionEfsVolumeConfiguration'] = None, - host: Optional['outputs.JobDefinitionVolumesHost'] = None, + host: Optional['outputs.JobDefinitionHost'] = None, name: Optional[str] = None): """ - :param 'JobDefinitionEfsVolumeConfiguration' efs_volume_configuration: This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . - :param 'JobDefinitionVolumesHost' host: The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. + :param 'JobDefinitionEfsVolumeConfiguration' efs_volume_configuration: This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . + :param 'JobDefinitionHost' host: The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. > This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided. :param str name: The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the `sourceVolume` parameter of container definition `mountPoints` . @@ -4054,13 +4402,13 @@ def __init__(__self__, *, @pulumi.getter(name="efsVolumeConfiguration") def efs_volume_configuration(self) -> Optional['outputs.JobDefinitionEfsVolumeConfiguration']: """ - This is used when you're using an Amazon Elastic File System file system for job storage. For more information, see [Amazon EFS Volumes](https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html) in the *AWS Batch User Guide* . + This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a `platformVersion` of at least `1.4.0` . """ return pulumi.get(self, "efs_volume_configuration") @property @pulumi.getter - def host(self) -> Optional['outputs.JobDefinitionVolumesHost']: + def host(self) -> Optional['outputs.JobDefinitionHost']: """ The contents of the `host` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. @@ -4077,46 +4425,6 @@ def name(self) -> Optional[str]: return pulumi.get(self, "name") -@pulumi.output_type -class JobDefinitionVolumesHost(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "sourcePath": - suggest = "source_path" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionVolumesHost. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionVolumesHost.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionVolumesHost.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - source_path: Optional[str] = None): - """ - :param str source_path: The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - - > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - """ - if source_path is not None: - pulumi.set(__self__, "source_path", source_path) - - @property - @pulumi.getter(name="sourcePath") - def source_path(self) -> Optional[str]: - """ - The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. - - > This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs. - """ - return pulumi.get(self, "source_path") - - @pulumi.output_type class JobQueueComputeEnvironmentOrder(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/cassandra/__init__.py b/sdk/python/pulumi_aws_native/cassandra/__init__.py index 69b59f91b8..f9e77880a5 100644 --- a/sdk/python/pulumi_aws_native/cassandra/__init__.py +++ b/sdk/python/pulumi_aws_native/cassandra/__init__.py @@ -8,7 +8,9 @@ from ._enums import * from .get_keyspace import * from .get_table import * +from .get_type import * from .keyspace import * from .table import * +from .type import * from ._inputs import * from . import outputs diff --git a/sdk/python/pulumi_aws_native/cassandra/_inputs.py b/sdk/python/pulumi_aws_native/cassandra/_inputs.py index 68da7363e0..7ab768ba07 100644 --- a/sdk/python/pulumi_aws_native/cassandra/_inputs.py +++ b/sdk/python/pulumi_aws_native/cassandra/_inputs.py @@ -38,6 +38,8 @@ 'TableScalingPolicyArgsDict', 'TableTargetTrackingScalingPolicyConfigurationArgs', 'TableTargetTrackingScalingPolicyConfigurationArgsDict', + 'TypeFieldArgs', + 'TypeFieldArgsDict', ] MYPY = False @@ -803,3 +805,37 @@ def scale_out_cooldown(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "scale_out_cooldown", value) +if not MYPY: + class TypeFieldArgsDict(TypedDict): + field_name: pulumi.Input[str] + field_type: pulumi.Input[str] +elif False: + TypeFieldArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TypeFieldArgs: + def __init__(__self__, *, + field_name: pulumi.Input[str], + field_type: pulumi.Input[str]): + pulumi.set(__self__, "field_name", field_name) + pulumi.set(__self__, "field_type", field_type) + + @property + @pulumi.getter(name="fieldName") + def field_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "field_name") + + @field_name.setter + def field_name(self, value: pulumi.Input[str]): + pulumi.set(self, "field_name", value) + + @property + @pulumi.getter(name="fieldType") + def field_type(self) -> pulumi.Input[str]: + return pulumi.get(self, "field_type") + + @field_type.setter + def field_type(self, value: pulumi.Input[str]): + pulumi.set(self, "field_type", value) + + diff --git a/sdk/python/pulumi_aws_native/cassandra/get_keyspace.py b/sdk/python/pulumi_aws_native/cassandra/get_keyspace.py index dbe50ae6c8..b6cf01ceb6 100644 --- a/sdk/python/pulumi_aws_native/cassandra/get_keyspace.py +++ b/sdk/python/pulumi_aws_native/cassandra/get_keyspace.py @@ -13,7 +13,9 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +from . import outputs from .. import outputs as _root_outputs +from ._enums import * __all__ = [ 'GetKeyspaceResult', @@ -24,11 +26,38 @@ @pulumi.output_type class GetKeyspaceResult: - def __init__(__self__, tags=None): + def __init__(__self__, client_side_timestamps_enabled=None, replication_specification=None, tags=None): + if client_side_timestamps_enabled and not isinstance(client_side_timestamps_enabled, bool): + raise TypeError("Expected argument 'client_side_timestamps_enabled' to be a bool") + pulumi.set(__self__, "client_side_timestamps_enabled", client_side_timestamps_enabled) + if replication_specification and not isinstance(replication_specification, dict): + raise TypeError("Expected argument 'replication_specification' to be a dict") + pulumi.set(__self__, "replication_specification", replication_specification) if tags and not isinstance(tags, list): raise TypeError("Expected argument 'tags' to be a list") pulumi.set(__self__, "tags", tags) + @property + @pulumi.getter(name="clientSideTimestampsEnabled") + def client_side_timestamps_enabled(self) -> Optional[bool]: + """ + Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + """ + return pulumi.get(self, "client_side_timestamps_enabled") + + @property + @pulumi.getter(name="replicationSpecification") + def replication_specification(self) -> Optional['outputs.KeyspaceReplicationSpecification']: + """ + Specifies the `ReplicationStrategy` of a keyspace. The options are: + + - `SINGLE_REGION` for a single Region keyspace (optional) or + - `MULTI_REGION` for a multi-Region keyspace + + If no `ReplicationStrategy` is provided, the default is `SINGLE_REGION` . If you choose `MULTI_REGION` , you must also provide a `RegionList` with the AWS Regions that the keyspace is replicated in. + """ + return pulumi.get(self, "replication_specification") + @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: @@ -46,6 +75,8 @@ def __await__(self): if False: yield self return GetKeyspaceResult( + client_side_timestamps_enabled=self.client_side_timestamps_enabled, + replication_specification=self.replication_specification, tags=self.tags) @@ -63,6 +94,8 @@ def get_keyspace(keyspace_name: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:cassandra:getKeyspace', __args__, opts=opts, typ=GetKeyspaceResult).value return AwaitableGetKeyspaceResult( + client_side_timestamps_enabled=pulumi.get(__ret__, 'client_side_timestamps_enabled'), + replication_specification=pulumi.get(__ret__, 'replication_specification'), tags=pulumi.get(__ret__, 'tags')) def get_keyspace_output(keyspace_name: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetKeyspaceResult]: @@ -77,4 +110,6 @@ def get_keyspace_output(keyspace_name: Optional[pulumi.Input[str]] = None, opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('aws-native:cassandra:getKeyspace', __args__, opts=opts, typ=GetKeyspaceResult) return __ret__.apply(lambda __response__: GetKeyspaceResult( + client_side_timestamps_enabled=pulumi.get(__response__, 'client_side_timestamps_enabled'), + replication_specification=pulumi.get(__response__, 'replication_specification'), tags=pulumi.get(__response__, 'tags'))) diff --git a/sdk/python/pulumi_aws_native/cassandra/get_type.py b/sdk/python/pulumi_aws_native/cassandra/get_type.py new file mode 100644 index 0000000000..b68e68f0fa --- /dev/null +++ b/sdk/python/pulumi_aws_native/cassandra/get_type.py @@ -0,0 +1,139 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities + +__all__ = [ + 'GetTypeResult', + 'AwaitableGetTypeResult', + 'get_type', + 'get_type_output', +] + +@pulumi.output_type +class GetTypeResult: + def __init__(__self__, direct_parent_types=None, direct_referring_tables=None, keyspace_arn=None, last_modified_timestamp=None, max_nesting_depth=None): + if direct_parent_types and not isinstance(direct_parent_types, list): + raise TypeError("Expected argument 'direct_parent_types' to be a list") + pulumi.set(__self__, "direct_parent_types", direct_parent_types) + if direct_referring_tables and not isinstance(direct_referring_tables, list): + raise TypeError("Expected argument 'direct_referring_tables' to be a list") + pulumi.set(__self__, "direct_referring_tables", direct_referring_tables) + if keyspace_arn and not isinstance(keyspace_arn, str): + raise TypeError("Expected argument 'keyspace_arn' to be a str") + pulumi.set(__self__, "keyspace_arn", keyspace_arn) + if last_modified_timestamp and not isinstance(last_modified_timestamp, float): + raise TypeError("Expected argument 'last_modified_timestamp' to be a float") + pulumi.set(__self__, "last_modified_timestamp", last_modified_timestamp) + if max_nesting_depth and not isinstance(max_nesting_depth, int): + raise TypeError("Expected argument 'max_nesting_depth' to be a int") + pulumi.set(__self__, "max_nesting_depth", max_nesting_depth) + + @property + @pulumi.getter(name="directParentTypes") + def direct_parent_types(self) -> Optional[Sequence[str]]: + """ + List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + """ + return pulumi.get(self, "direct_parent_types") + + @property + @pulumi.getter(name="directReferringTables") + def direct_referring_tables(self) -> Optional[Sequence[str]]: + """ + List of Tables that directly reference the User-Defined Type in their columns. + """ + return pulumi.get(self, "direct_referring_tables") + + @property + @pulumi.getter(name="keyspaceArn") + def keyspace_arn(self) -> Optional[str]: + """ + ARN of the Keyspace which contains the User-Defined Type. + """ + return pulumi.get(self, "keyspace_arn") + + @property + @pulumi.getter(name="lastModifiedTimestamp") + def last_modified_timestamp(self) -> Optional[float]: + """ + Timestamp of the last time the User-Defined Type's meta data was modified. + """ + return pulumi.get(self, "last_modified_timestamp") + + @property + @pulumi.getter(name="maxNestingDepth") + def max_nesting_depth(self) -> Optional[int]: + """ + Maximum nesting depth of the User-Defined Type across the field types. + """ + return pulumi.get(self, "max_nesting_depth") + + +class AwaitableGetTypeResult(GetTypeResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetTypeResult( + direct_parent_types=self.direct_parent_types, + direct_referring_tables=self.direct_referring_tables, + keyspace_arn=self.keyspace_arn, + last_modified_timestamp=self.last_modified_timestamp, + max_nesting_depth=self.max_nesting_depth) + + +def get_type(keyspace_name: Optional[str] = None, + type_name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTypeResult: + """ + Resource schema for AWS::Cassandra::Type + + + :param str keyspace_name: Name of the Keyspace which contains the User-Defined Type. + :param str type_name: Name of the User-Defined Type. + """ + __args__ = dict() + __args__['keyspaceName'] = keyspace_name + __args__['typeName'] = type_name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:cassandra:getType', __args__, opts=opts, typ=GetTypeResult).value + + return AwaitableGetTypeResult( + direct_parent_types=pulumi.get(__ret__, 'direct_parent_types'), + direct_referring_tables=pulumi.get(__ret__, 'direct_referring_tables'), + keyspace_arn=pulumi.get(__ret__, 'keyspace_arn'), + last_modified_timestamp=pulumi.get(__ret__, 'last_modified_timestamp'), + max_nesting_depth=pulumi.get(__ret__, 'max_nesting_depth')) +def get_type_output(keyspace_name: Optional[pulumi.Input[str]] = None, + type_name: Optional[pulumi.Input[str]] = None, + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetTypeResult]: + """ + Resource schema for AWS::Cassandra::Type + + + :param str keyspace_name: Name of the Keyspace which contains the User-Defined Type. + :param str type_name: Name of the User-Defined Type. + """ + __args__ = dict() + __args__['keyspaceName'] = keyspace_name + __args__['typeName'] = type_name + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('aws-native:cassandra:getType', __args__, opts=opts, typ=GetTypeResult) + return __ret__.apply(lambda __response__: GetTypeResult( + direct_parent_types=pulumi.get(__response__, 'direct_parent_types'), + direct_referring_tables=pulumi.get(__response__, 'direct_referring_tables'), + keyspace_arn=pulumi.get(__response__, 'keyspace_arn'), + last_modified_timestamp=pulumi.get(__response__, 'last_modified_timestamp'), + max_nesting_depth=pulumi.get(__response__, 'max_nesting_depth'))) diff --git a/sdk/python/pulumi_aws_native/cassandra/keyspace.py b/sdk/python/pulumi_aws_native/cassandra/keyspace.py index 5b9e925088..e5141e80c2 100644 --- a/sdk/python/pulumi_aws_native/cassandra/keyspace.py +++ b/sdk/python/pulumi_aws_native/cassandra/keyspace.py @@ -24,11 +24,13 @@ @pulumi.input_type class KeyspaceArgs: def __init__(__self__, *, + client_side_timestamps_enabled: Optional[pulumi.Input[bool]] = None, keyspace_name: Optional[pulumi.Input[str]] = None, replication_specification: Optional[pulumi.Input['KeyspaceReplicationSpecificationArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a Keyspace resource. + :param pulumi.Input[bool] client_side_timestamps_enabled: Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. :param pulumi.Input[str] keyspace_name: Name for Cassandra keyspace :param pulumi.Input['KeyspaceReplicationSpecificationArgs'] replication_specification: Specifies the `ReplicationStrategy` of a keyspace. The options are: @@ -40,6 +42,8 @@ def __init__(__self__, *, For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . """ + if client_side_timestamps_enabled is not None: + pulumi.set(__self__, "client_side_timestamps_enabled", client_side_timestamps_enabled) if keyspace_name is not None: pulumi.set(__self__, "keyspace_name", keyspace_name) if replication_specification is not None: @@ -47,6 +51,18 @@ def __init__(__self__, *, if tags is not None: pulumi.set(__self__, "tags", tags) + @property + @pulumi.getter(name="clientSideTimestampsEnabled") + def client_side_timestamps_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + """ + return pulumi.get(self, "client_side_timestamps_enabled") + + @client_side_timestamps_enabled.setter + def client_side_timestamps_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "client_side_timestamps_enabled", value) + @property @pulumi.getter(name="keyspaceName") def keyspace_name(self) -> Optional[pulumi.Input[str]]: @@ -96,6 +112,7 @@ class Keyspace(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + client_side_timestamps_enabled: Optional[pulumi.Input[bool]] = None, keyspace_name: Optional[pulumi.Input[str]] = None, replication_specification: Optional[pulumi.Input[Union['KeyspaceReplicationSpecificationArgs', 'KeyspaceReplicationSpecificationArgsDict']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, @@ -163,6 +180,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[bool] client_side_timestamps_enabled: Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. :param pulumi.Input[str] keyspace_name: Name for Cassandra keyspace :param pulumi.Input[Union['KeyspaceReplicationSpecificationArgs', 'KeyspaceReplicationSpecificationArgsDict']] replication_specification: Specifies the `ReplicationStrategy` of a keyspace. The options are: @@ -256,6 +274,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + client_side_timestamps_enabled: Optional[pulumi.Input[bool]] = None, keyspace_name: Optional[pulumi.Input[str]] = None, replication_specification: Optional[pulumi.Input[Union['KeyspaceReplicationSpecificationArgs', 'KeyspaceReplicationSpecificationArgsDict']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, @@ -268,10 +287,11 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = KeyspaceArgs.__new__(KeyspaceArgs) + __props__.__dict__["client_side_timestamps_enabled"] = client_side_timestamps_enabled __props__.__dict__["keyspace_name"] = keyspace_name __props__.__dict__["replication_specification"] = replication_specification __props__.__dict__["tags"] = tags - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["keyspaceName", "replicationSpecification"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["keyspaceName"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Keyspace, __self__).__init__( 'aws-native:cassandra:Keyspace', @@ -295,11 +315,20 @@ def get(resource_name: str, __props__ = KeyspaceArgs.__new__(KeyspaceArgs) + __props__.__dict__["client_side_timestamps_enabled"] = None __props__.__dict__["keyspace_name"] = None __props__.__dict__["replication_specification"] = None __props__.__dict__["tags"] = None return Keyspace(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="clientSideTimestampsEnabled") + def client_side_timestamps_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again. + """ + return pulumi.get(self, "client_side_timestamps_enabled") + @property @pulumi.getter(name="keyspaceName") def keyspace_name(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/cassandra/outputs.py b/sdk/python/pulumi_aws_native/cassandra/outputs.py index c48a64eb03..d8ea034b28 100644 --- a/sdk/python/pulumi_aws_native/cassandra/outputs.py +++ b/sdk/python/pulumi_aws_native/cassandra/outputs.py @@ -28,6 +28,7 @@ 'TableReplicaSpecification', 'TableScalingPolicy', 'TableTargetTrackingScalingPolicyConfiguration', + 'TypeField', ] @pulumi.output_type @@ -709,3 +710,41 @@ def scale_out_cooldown(self) -> Optional[int]: return pulumi.get(self, "scale_out_cooldown") +@pulumi.output_type +class TypeField(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "fieldName": + suggest = "field_name" + elif key == "fieldType": + suggest = "field_type" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TypeField. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TypeField.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TypeField.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + field_name: str, + field_type: str): + pulumi.set(__self__, "field_name", field_name) + pulumi.set(__self__, "field_type", field_type) + + @property + @pulumi.getter(name="fieldName") + def field_name(self) -> str: + return pulumi.get(self, "field_name") + + @property + @pulumi.getter(name="fieldType") + def field_type(self) -> str: + return pulumi.get(self, "field_type") + + diff --git a/sdk/python/pulumi_aws_native/cassandra/type.py b/sdk/python/pulumi_aws_native/cassandra/type.py new file mode 100644 index 0000000000..46aa950220 --- /dev/null +++ b/sdk/python/pulumi_aws_native/cassandra/type.py @@ -0,0 +1,238 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['TypeArgs', 'Type'] + +@pulumi.input_type +class TypeArgs: + def __init__(__self__, *, + fields: pulumi.Input[Sequence[pulumi.Input['TypeFieldArgs']]], + keyspace_name: pulumi.Input[str], + type_name: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a Type resource. + :param pulumi.Input[Sequence[pulumi.Input['TypeFieldArgs']]] fields: Field definitions of the User-Defined Type + :param pulumi.Input[str] keyspace_name: Name of the Keyspace which contains the User-Defined Type. + :param pulumi.Input[str] type_name: Name of the User-Defined Type. + """ + pulumi.set(__self__, "fields", fields) + pulumi.set(__self__, "keyspace_name", keyspace_name) + if type_name is not None: + pulumi.set(__self__, "type_name", type_name) + + @property + @pulumi.getter + def fields(self) -> pulumi.Input[Sequence[pulumi.Input['TypeFieldArgs']]]: + """ + Field definitions of the User-Defined Type + """ + return pulumi.get(self, "fields") + + @fields.setter + def fields(self, value: pulumi.Input[Sequence[pulumi.Input['TypeFieldArgs']]]): + pulumi.set(self, "fields", value) + + @property + @pulumi.getter(name="keyspaceName") + def keyspace_name(self) -> pulumi.Input[str]: + """ + Name of the Keyspace which contains the User-Defined Type. + """ + return pulumi.get(self, "keyspace_name") + + @keyspace_name.setter + def keyspace_name(self, value: pulumi.Input[str]): + pulumi.set(self, "keyspace_name", value) + + @property + @pulumi.getter(name="typeName") + def type_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the User-Defined Type. + """ + return pulumi.get(self, "type_name") + + @type_name.setter + def type_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type_name", value) + + +class Type(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + fields: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TypeFieldArgs', 'TypeFieldArgsDict']]]]] = None, + keyspace_name: Optional[pulumi.Input[str]] = None, + type_name: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource schema for AWS::Cassandra::Type + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[Sequence[pulumi.Input[Union['TypeFieldArgs', 'TypeFieldArgsDict']]]] fields: Field definitions of the User-Defined Type + :param pulumi.Input[str] keyspace_name: Name of the Keyspace which contains the User-Defined Type. + :param pulumi.Input[str] type_name: Name of the User-Defined Type. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: TypeArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource schema for AWS::Cassandra::Type + + :param str resource_name: The name of the resource. + :param TypeArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(TypeArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + fields: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TypeFieldArgs', 'TypeFieldArgsDict']]]]] = None, + keyspace_name: Optional[pulumi.Input[str]] = None, + type_name: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = TypeArgs.__new__(TypeArgs) + + if fields is None and not opts.urn: + raise TypeError("Missing required property 'fields'") + __props__.__dict__["fields"] = fields + if keyspace_name is None and not opts.urn: + raise TypeError("Missing required property 'keyspace_name'") + __props__.__dict__["keyspace_name"] = keyspace_name + __props__.__dict__["type_name"] = type_name + __props__.__dict__["direct_parent_types"] = None + __props__.__dict__["direct_referring_tables"] = None + __props__.__dict__["keyspace_arn"] = None + __props__.__dict__["last_modified_timestamp"] = None + __props__.__dict__["max_nesting_depth"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["fields[*]", "keyspaceName", "typeName"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(Type, __self__).__init__( + 'aws-native:cassandra:Type', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'Type': + """ + Get an existing Type resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = TypeArgs.__new__(TypeArgs) + + __props__.__dict__["direct_parent_types"] = None + __props__.__dict__["direct_referring_tables"] = None + __props__.__dict__["fields"] = None + __props__.__dict__["keyspace_arn"] = None + __props__.__dict__["keyspace_name"] = None + __props__.__dict__["last_modified_timestamp"] = None + __props__.__dict__["max_nesting_depth"] = None + __props__.__dict__["type_name"] = None + return Type(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="directParentTypes") + def direct_parent_types(self) -> pulumi.Output[Sequence[str]]: + """ + List of parent User-Defined Types that directly reference the User-Defined Type in their fields. + """ + return pulumi.get(self, "direct_parent_types") + + @property + @pulumi.getter(name="directReferringTables") + def direct_referring_tables(self) -> pulumi.Output[Sequence[str]]: + """ + List of Tables that directly reference the User-Defined Type in their columns. + """ + return pulumi.get(self, "direct_referring_tables") + + @property + @pulumi.getter + def fields(self) -> pulumi.Output[Sequence['outputs.TypeField']]: + """ + Field definitions of the User-Defined Type + """ + return pulumi.get(self, "fields") + + @property + @pulumi.getter(name="keyspaceArn") + def keyspace_arn(self) -> pulumi.Output[str]: + """ + ARN of the Keyspace which contains the User-Defined Type. + """ + return pulumi.get(self, "keyspace_arn") + + @property + @pulumi.getter(name="keyspaceName") + def keyspace_name(self) -> pulumi.Output[str]: + """ + Name of the Keyspace which contains the User-Defined Type. + """ + return pulumi.get(self, "keyspace_name") + + @property + @pulumi.getter(name="lastModifiedTimestamp") + def last_modified_timestamp(self) -> pulumi.Output[float]: + """ + Timestamp of the last time the User-Defined Type's meta data was modified. + """ + return pulumi.get(self, "last_modified_timestamp") + + @property + @pulumi.getter(name="maxNestingDepth") + def max_nesting_depth(self) -> pulumi.Output[int]: + """ + Maximum nesting depth of the User-Defined Type across the field types. + """ + return pulumi.get(self, "max_nesting_depth") + + @property + @pulumi.getter(name="typeName") + def type_name(self) -> pulumi.Output[str]: + """ + Name of the User-Defined Type. + """ + return pulumi.get(self, "type_name") + diff --git a/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py b/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py index 67dc77b2f3..8887c94491 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py @@ -64,14 +64,26 @@ 'ConfiguredTableAssociationAnalysisRulePolicyArgsDict', 'ConfiguredTableAssociationAnalysisRuleArgs', 'ConfiguredTableAssociationAnalysisRuleArgsDict', + 'ConfiguredTableAthenaTableReferenceArgs', + 'ConfiguredTableAthenaTableReferenceArgsDict', 'ConfiguredTableDifferentialPrivacyColumnArgs', 'ConfiguredTableDifferentialPrivacyColumnArgsDict', 'ConfiguredTableDifferentialPrivacyArgs', 'ConfiguredTableDifferentialPrivacyArgsDict', 'ConfiguredTableGlueTableReferenceArgs', 'ConfiguredTableGlueTableReferenceArgsDict', - 'ConfiguredTableTableReferenceArgs', - 'ConfiguredTableTableReferenceArgsDict', + 'ConfiguredTableSnowflakeTableReferenceArgs', + 'ConfiguredTableSnowflakeTableReferenceArgsDict', + 'ConfiguredTableSnowflakeTableSchemaPropertiesArgs', + 'ConfiguredTableSnowflakeTableSchemaPropertiesArgsDict', + 'ConfiguredTableSnowflakeTableSchemaV1Args', + 'ConfiguredTableSnowflakeTableSchemaV1ArgsDict', + 'ConfiguredTableTableReference0PropertiesArgs', + 'ConfiguredTableTableReference0PropertiesArgsDict', + 'ConfiguredTableTableReference1PropertiesArgs', + 'ConfiguredTableTableReference1PropertiesArgsDict', + 'ConfiguredTableTableReference2PropertiesArgs', + 'ConfiguredTableTableReference2PropertiesArgsDict', 'IdMappingTableInputReferenceConfigArgs', 'IdMappingTableInputReferenceConfigArgsDict', 'IdNamespaceAssociationIdMappingConfigArgs', @@ -1183,6 +1195,65 @@ def type(self, value: pulumi.Input['ConfiguredTableAssociationAnalysisRuleType'] pulumi.set(self, "type", value) +if not MYPY: + class ConfiguredTableAthenaTableReferenceArgsDict(TypedDict): + database_name: pulumi.Input[str] + table_name: pulumi.Input[str] + work_group: pulumi.Input[str] + output_location: NotRequired[pulumi.Input[str]] +elif False: + ConfiguredTableAthenaTableReferenceArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ConfiguredTableAthenaTableReferenceArgs: + def __init__(__self__, *, + database_name: pulumi.Input[str], + table_name: pulumi.Input[str], + work_group: pulumi.Input[str], + output_location: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "database_name", database_name) + pulumi.set(__self__, "table_name", table_name) + pulumi.set(__self__, "work_group", work_group) + if output_location is not None: + pulumi.set(__self__, "output_location", output_location) + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "database_name") + + @database_name.setter + def database_name(self, value: pulumi.Input[str]): + pulumi.set(self, "database_name", value) + + @property + @pulumi.getter(name="tableName") + def table_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "table_name") + + @table_name.setter + def table_name(self, value: pulumi.Input[str]): + pulumi.set(self, "table_name", value) + + @property + @pulumi.getter(name="workGroup") + def work_group(self) -> pulumi.Input[str]: + return pulumi.get(self, "work_group") + + @work_group.setter + def work_group(self, value: pulumi.Input[str]): + pulumi.set(self, "work_group", value) + + @property + @pulumi.getter(name="outputLocation") + def output_location(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "output_location") + + @output_location.setter + def output_location(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "output_location", value) + + if not MYPY: class ConfiguredTableDifferentialPrivacyColumnArgsDict(TypedDict): name: pulumi.Input[str] @@ -1230,13 +1301,7 @@ def columns(self, value: pulumi.Input[Sequence[pulumi.Input['ConfiguredTableDiff if not MYPY: class ConfiguredTableGlueTableReferenceArgsDict(TypedDict): database_name: pulumi.Input[str] - """ - The name of the database the AWS Glue table belongs to. - """ table_name: pulumi.Input[str] - """ - The name of the AWS Glue table. - """ elif False: ConfiguredTableGlueTableReferenceArgsDict: TypeAlias = Mapping[str, Any] @@ -1245,19 +1310,12 @@ class ConfiguredTableGlueTableReferenceArgs: def __init__(__self__, *, database_name: pulumi.Input[str], table_name: pulumi.Input[str]): - """ - :param pulumi.Input[str] database_name: The name of the database the AWS Glue table belongs to. - :param pulumi.Input[str] table_name: The name of the AWS Glue table. - """ pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "table_name", table_name) @property @pulumi.getter(name="databaseName") def database_name(self) -> pulumi.Input[str]: - """ - The name of the database the AWS Glue table belongs to. - """ return pulumi.get(self, "database_name") @database_name.setter @@ -1267,9 +1325,6 @@ def database_name(self, value: pulumi.Input[str]): @property @pulumi.getter(name="tableName") def table_name(self) -> pulumi.Input[str]: - """ - The name of the AWS Glue table. - """ return pulumi.get(self, "table_name") @table_name.setter @@ -1278,29 +1333,158 @@ def table_name(self, value: pulumi.Input[str]): if not MYPY: - class ConfiguredTableTableReferenceArgsDict(TypedDict): + class ConfiguredTableSnowflakeTableReferenceArgsDict(TypedDict): + account_identifier: pulumi.Input[str] + database_name: pulumi.Input[str] + schema_name: pulumi.Input[str] + secret_arn: pulumi.Input[str] + table_name: pulumi.Input[str] + table_schema: pulumi.Input['ConfiguredTableSnowflakeTableSchemaPropertiesArgsDict'] +elif False: + ConfiguredTableSnowflakeTableReferenceArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ConfiguredTableSnowflakeTableReferenceArgs: + def __init__(__self__, *, + account_identifier: pulumi.Input[str], + database_name: pulumi.Input[str], + schema_name: pulumi.Input[str], + secret_arn: pulumi.Input[str], + table_name: pulumi.Input[str], + table_schema: pulumi.Input['ConfiguredTableSnowflakeTableSchemaPropertiesArgs']): + pulumi.set(__self__, "account_identifier", account_identifier) + pulumi.set(__self__, "database_name", database_name) + pulumi.set(__self__, "schema_name", schema_name) + pulumi.set(__self__, "secret_arn", secret_arn) + pulumi.set(__self__, "table_name", table_name) + pulumi.set(__self__, "table_schema", table_schema) + + @property + @pulumi.getter(name="accountIdentifier") + def account_identifier(self) -> pulumi.Input[str]: + return pulumi.get(self, "account_identifier") + + @account_identifier.setter + def account_identifier(self, value: pulumi.Input[str]): + pulumi.set(self, "account_identifier", value) + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "database_name") + + @database_name.setter + def database_name(self, value: pulumi.Input[str]): + pulumi.set(self, "database_name", value) + + @property + @pulumi.getter(name="schemaName") + def schema_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "schema_name") + + @schema_name.setter + def schema_name(self, value: pulumi.Input[str]): + pulumi.set(self, "schema_name", value) + + @property + @pulumi.getter(name="secretArn") + def secret_arn(self) -> pulumi.Input[str]: + return pulumi.get(self, "secret_arn") + + @secret_arn.setter + def secret_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "secret_arn", value) + + @property + @pulumi.getter(name="tableName") + def table_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "table_name") + + @table_name.setter + def table_name(self, value: pulumi.Input[str]): + pulumi.set(self, "table_name", value) + + @property + @pulumi.getter(name="tableSchema") + def table_schema(self) -> pulumi.Input['ConfiguredTableSnowflakeTableSchemaPropertiesArgs']: + return pulumi.get(self, "table_schema") + + @table_schema.setter + def table_schema(self, value: pulumi.Input['ConfiguredTableSnowflakeTableSchemaPropertiesArgs']): + pulumi.set(self, "table_schema", value) + + +if not MYPY: + class ConfiguredTableSnowflakeTableSchemaPropertiesArgsDict(TypedDict): + v1: pulumi.Input[Sequence[pulumi.Input['ConfiguredTableSnowflakeTableSchemaV1ArgsDict']]] +elif False: + ConfiguredTableSnowflakeTableSchemaPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ConfiguredTableSnowflakeTableSchemaPropertiesArgs: + def __init__(__self__, *, + v1: pulumi.Input[Sequence[pulumi.Input['ConfiguredTableSnowflakeTableSchemaV1Args']]]): + pulumi.set(__self__, "v1", v1) + + @property + @pulumi.getter + def v1(self) -> pulumi.Input[Sequence[pulumi.Input['ConfiguredTableSnowflakeTableSchemaV1Args']]]: + return pulumi.get(self, "v1") + + @v1.setter + def v1(self, value: pulumi.Input[Sequence[pulumi.Input['ConfiguredTableSnowflakeTableSchemaV1Args']]]): + pulumi.set(self, "v1", value) + + +if not MYPY: + class ConfiguredTableSnowflakeTableSchemaV1ArgsDict(TypedDict): + column_name: pulumi.Input[str] + column_type: pulumi.Input[str] +elif False: + ConfiguredTableSnowflakeTableSchemaV1ArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ConfiguredTableSnowflakeTableSchemaV1Args: + def __init__(__self__, *, + column_name: pulumi.Input[str], + column_type: pulumi.Input[str]): + pulumi.set(__self__, "column_name", column_name) + pulumi.set(__self__, "column_type", column_type) + + @property + @pulumi.getter(name="columnName") + def column_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "column_name") + + @column_name.setter + def column_name(self, value: pulumi.Input[str]): + pulumi.set(self, "column_name", value) + + @property + @pulumi.getter(name="columnType") + def column_type(self) -> pulumi.Input[str]: + return pulumi.get(self, "column_type") + + @column_type.setter + def column_type(self, value: pulumi.Input[str]): + pulumi.set(self, "column_type", value) + + +if not MYPY: + class ConfiguredTableTableReference0PropertiesArgsDict(TypedDict): glue: pulumi.Input['ConfiguredTableGlueTableReferenceArgsDict'] - """ - If present, a reference to the AWS Glue table referred to by this table reference. - """ elif False: - ConfiguredTableTableReferenceArgsDict: TypeAlias = Mapping[str, Any] + ConfiguredTableTableReference0PropertiesArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type -class ConfiguredTableTableReferenceArgs: +class ConfiguredTableTableReference0PropertiesArgs: def __init__(__self__, *, glue: pulumi.Input['ConfiguredTableGlueTableReferenceArgs']): - """ - :param pulumi.Input['ConfiguredTableGlueTableReferenceArgs'] glue: If present, a reference to the AWS Glue table referred to by this table reference. - """ pulumi.set(__self__, "glue", glue) @property @pulumi.getter def glue(self) -> pulumi.Input['ConfiguredTableGlueTableReferenceArgs']: - """ - If present, a reference to the AWS Glue table referred to by this table reference. - """ return pulumi.get(self, "glue") @glue.setter @@ -1308,6 +1492,50 @@ def glue(self, value: pulumi.Input['ConfiguredTableGlueTableReferenceArgs']): pulumi.set(self, "glue", value) +if not MYPY: + class ConfiguredTableTableReference1PropertiesArgsDict(TypedDict): + snowflake: pulumi.Input['ConfiguredTableSnowflakeTableReferenceArgsDict'] +elif False: + ConfiguredTableTableReference1PropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ConfiguredTableTableReference1PropertiesArgs: + def __init__(__self__, *, + snowflake: pulumi.Input['ConfiguredTableSnowflakeTableReferenceArgs']): + pulumi.set(__self__, "snowflake", snowflake) + + @property + @pulumi.getter + def snowflake(self) -> pulumi.Input['ConfiguredTableSnowflakeTableReferenceArgs']: + return pulumi.get(self, "snowflake") + + @snowflake.setter + def snowflake(self, value: pulumi.Input['ConfiguredTableSnowflakeTableReferenceArgs']): + pulumi.set(self, "snowflake", value) + + +if not MYPY: + class ConfiguredTableTableReference2PropertiesArgsDict(TypedDict): + athena: pulumi.Input['ConfiguredTableAthenaTableReferenceArgsDict'] +elif False: + ConfiguredTableTableReference2PropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ConfiguredTableTableReference2PropertiesArgs: + def __init__(__self__, *, + athena: pulumi.Input['ConfiguredTableAthenaTableReferenceArgs']): + pulumi.set(__self__, "athena", athena) + + @property + @pulumi.getter + def athena(self) -> pulumi.Input['ConfiguredTableAthenaTableReferenceArgs']: + return pulumi.get(self, "athena") + + @athena.setter + def athena(self, value: pulumi.Input['ConfiguredTableAthenaTableReferenceArgs']): + pulumi.set(self, "athena", value) + + if not MYPY: class IdMappingTableInputReferenceConfigArgsDict(TypedDict): input_reference_arn: pulumi.Input[str] diff --git a/sdk/python/pulumi_aws_native/cleanrooms/configured_table.py b/sdk/python/pulumi_aws_native/cleanrooms/configured_table.py index 86ddd96718..74f78c848a 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/configured_table.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/configured_table.py @@ -26,7 +26,7 @@ class ConfiguredTableArgs: def __init__(__self__, *, allowed_columns: pulumi.Input[Sequence[pulumi.Input[str]]], analysis_method: pulumi.Input['ConfiguredTableAnalysisMethod'], - table_reference: pulumi.Input['ConfiguredTableTableReferenceArgs'], + table_reference: pulumi.Input[Union['ConfiguredTableTableReference0PropertiesArgs', 'ConfiguredTableTableReference1PropertiesArgs', 'ConfiguredTableTableReference2PropertiesArgs']], analysis_rules: Optional[pulumi.Input[Sequence[pulumi.Input['ConfiguredTableAnalysisRuleArgs']]]] = None, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -35,7 +35,7 @@ def __init__(__self__, *, The set of arguments for constructing a ConfiguredTable resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_columns: The columns within the underlying AWS Glue table that can be utilized within collaborations. :param pulumi.Input['ConfiguredTableAnalysisMethod'] analysis_method: The analysis method for the configured table. The only valid value is currently `DIRECT_QUERY`. - :param pulumi.Input['ConfiguredTableTableReferenceArgs'] table_reference: The table that this configured table represents. + :param pulumi.Input[Union['ConfiguredTableTableReference0PropertiesArgs', 'ConfiguredTableTableReference1PropertiesArgs', 'ConfiguredTableTableReference2PropertiesArgs']] table_reference: The table that this configured table represents. :param pulumi.Input[Sequence[pulumi.Input['ConfiguredTableAnalysisRuleArgs']]] analysis_rules: The analysis rule that was created for the configured table. :param pulumi.Input[str] description: A description for the configured table. :param pulumi.Input[str] name: A name for the configured table. @@ -79,14 +79,14 @@ def analysis_method(self, value: pulumi.Input['ConfiguredTableAnalysisMethod']): @property @pulumi.getter(name="tableReference") - def table_reference(self) -> pulumi.Input['ConfiguredTableTableReferenceArgs']: + def table_reference(self) -> pulumi.Input[Union['ConfiguredTableTableReference0PropertiesArgs', 'ConfiguredTableTableReference1PropertiesArgs', 'ConfiguredTableTableReference2PropertiesArgs']]: """ The table that this configured table represents. """ return pulumi.get(self, "table_reference") @table_reference.setter - def table_reference(self, value: pulumi.Input['ConfiguredTableTableReferenceArgs']): + def table_reference(self, value: pulumi.Input[Union['ConfiguredTableTableReference0PropertiesArgs', 'ConfiguredTableTableReference1PropertiesArgs', 'ConfiguredTableTableReference2PropertiesArgs']]): pulumi.set(self, "table_reference", value) @property @@ -148,7 +148,7 @@ def __init__(__self__, analysis_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfiguredTableAnalysisRuleArgs', 'ConfiguredTableAnalysisRuleArgsDict']]]]] = None, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - table_reference: Optional[pulumi.Input[Union['ConfiguredTableTableReferenceArgs', 'ConfiguredTableTableReferenceArgsDict']]] = None, + table_reference: Optional[pulumi.Input[Union[Union['ConfiguredTableTableReference0PropertiesArgs', 'ConfiguredTableTableReference0PropertiesArgsDict'], Union['ConfiguredTableTableReference1PropertiesArgs', 'ConfiguredTableTableReference1PropertiesArgsDict'], Union['ConfiguredTableTableReference2PropertiesArgs', 'ConfiguredTableTableReference2PropertiesArgsDict']]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, __props__=None): """ @@ -161,7 +161,7 @@ def __init__(__self__, :param pulumi.Input[Sequence[pulumi.Input[Union['ConfiguredTableAnalysisRuleArgs', 'ConfiguredTableAnalysisRuleArgsDict']]]] analysis_rules: The analysis rule that was created for the configured table. :param pulumi.Input[str] description: A description for the configured table. :param pulumi.Input[str] name: A name for the configured table. - :param pulumi.Input[Union['ConfiguredTableTableReferenceArgs', 'ConfiguredTableTableReferenceArgsDict']] table_reference: The table that this configured table represents. + :param pulumi.Input[Union[Union['ConfiguredTableTableReference0PropertiesArgs', 'ConfiguredTableTableReference0PropertiesArgsDict'], Union['ConfiguredTableTableReference1PropertiesArgs', 'ConfiguredTableTableReference1PropertiesArgsDict'], Union['ConfiguredTableTableReference2PropertiesArgs', 'ConfiguredTableTableReference2PropertiesArgsDict']]] table_reference: The table that this configured table represents. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. """ ... @@ -193,7 +193,7 @@ def _internal_init(__self__, analysis_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConfiguredTableAnalysisRuleArgs', 'ConfiguredTableAnalysisRuleArgsDict']]]]] = None, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - table_reference: Optional[pulumi.Input[Union['ConfiguredTableTableReferenceArgs', 'ConfiguredTableTableReferenceArgsDict']]] = None, + table_reference: Optional[pulumi.Input[Union[Union['ConfiguredTableTableReference0PropertiesArgs', 'ConfiguredTableTableReference0PropertiesArgsDict'], Union['ConfiguredTableTableReference1PropertiesArgs', 'ConfiguredTableTableReference1PropertiesArgsDict'], Union['ConfiguredTableTableReference2PropertiesArgs', 'ConfiguredTableTableReference2PropertiesArgsDict']]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -316,7 +316,7 @@ def name(self) -> pulumi.Output[str]: @property @pulumi.getter(name="tableReference") - def table_reference(self) -> pulumi.Output['outputs.ConfiguredTableTableReference']: + def table_reference(self) -> pulumi.Output[Any]: """ The table that this configured table represents. """ diff --git a/sdk/python/pulumi_aws_native/cleanrooms/outputs.py b/sdk/python/pulumi_aws_native/cleanrooms/outputs.py index 8da090fd93..ede2b596d5 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/outputs.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/outputs.py @@ -42,10 +42,16 @@ 'ConfiguredTableAssociationAnalysisRulePolicyV10Properties', 'ConfiguredTableAssociationAnalysisRulePolicyV11Properties', 'ConfiguredTableAssociationAnalysisRulePolicyV12Properties', + 'ConfiguredTableAthenaTableReference', 'ConfiguredTableDifferentialPrivacy', 'ConfiguredTableDifferentialPrivacyColumn', 'ConfiguredTableGlueTableReference', - 'ConfiguredTableTableReference', + 'ConfiguredTableSnowflakeTableReference', + 'ConfiguredTableSnowflakeTableSchemaProperties', + 'ConfiguredTableSnowflakeTableSchemaV1', + 'ConfiguredTableTableReference0Properties', + 'ConfiguredTableTableReference1Properties', + 'ConfiguredTableTableReference2Properties', 'IdMappingTableInputReferenceConfig', 'IdMappingTableInputReferenceProperties', 'IdMappingTableInputSource', @@ -994,6 +1000,63 @@ def custom(self) -> 'outputs.ConfiguredTableAssociationAnalysisRuleCustom': return pulumi.get(self, "custom") +@pulumi.output_type +class ConfiguredTableAthenaTableReference(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "databaseName": + suggest = "database_name" + elif key == "tableName": + suggest = "table_name" + elif key == "workGroup": + suggest = "work_group" + elif key == "outputLocation": + suggest = "output_location" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ConfiguredTableAthenaTableReference. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ConfiguredTableAthenaTableReference.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ConfiguredTableAthenaTableReference.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + database_name: str, + table_name: str, + work_group: str, + output_location: Optional[str] = None): + pulumi.set(__self__, "database_name", database_name) + pulumi.set(__self__, "table_name", table_name) + pulumi.set(__self__, "work_group", work_group) + if output_location is not None: + pulumi.set(__self__, "output_location", output_location) + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> str: + return pulumi.get(self, "database_name") + + @property + @pulumi.getter(name="tableName") + def table_name(self) -> str: + return pulumi.get(self, "table_name") + + @property + @pulumi.getter(name="workGroup") + def work_group(self) -> str: + return pulumi.get(self, "work_group") + + @property + @pulumi.getter(name="outputLocation") + def output_location(self) -> Optional[str]: + return pulumi.get(self, "output_location") + + @pulumi.output_type class ConfiguredTableDifferentialPrivacy(dict): def __init__(__self__, *, @@ -1042,48 +1105,180 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, database_name: str, table_name: str): - """ - :param str database_name: The name of the database the AWS Glue table belongs to. - :param str table_name: The name of the AWS Glue table. - """ pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "table_name", table_name) @property @pulumi.getter(name="databaseName") def database_name(self) -> str: - """ - The name of the database the AWS Glue table belongs to. - """ return pulumi.get(self, "database_name") @property @pulumi.getter(name="tableName") def table_name(self) -> str: - """ - The name of the AWS Glue table. - """ return pulumi.get(self, "table_name") @pulumi.output_type -class ConfiguredTableTableReference(dict): +class ConfiguredTableSnowflakeTableReference(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "accountIdentifier": + suggest = "account_identifier" + elif key == "databaseName": + suggest = "database_name" + elif key == "schemaName": + suggest = "schema_name" + elif key == "secretArn": + suggest = "secret_arn" + elif key == "tableName": + suggest = "table_name" + elif key == "tableSchema": + suggest = "table_schema" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ConfiguredTableSnowflakeTableReference. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ConfiguredTableSnowflakeTableReference.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ConfiguredTableSnowflakeTableReference.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + account_identifier: str, + database_name: str, + schema_name: str, + secret_arn: str, + table_name: str, + table_schema: 'outputs.ConfiguredTableSnowflakeTableSchemaProperties'): + pulumi.set(__self__, "account_identifier", account_identifier) + pulumi.set(__self__, "database_name", database_name) + pulumi.set(__self__, "schema_name", schema_name) + pulumi.set(__self__, "secret_arn", secret_arn) + pulumi.set(__self__, "table_name", table_name) + pulumi.set(__self__, "table_schema", table_schema) + + @property + @pulumi.getter(name="accountIdentifier") + def account_identifier(self) -> str: + return pulumi.get(self, "account_identifier") + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> str: + return pulumi.get(self, "database_name") + + @property + @pulumi.getter(name="schemaName") + def schema_name(self) -> str: + return pulumi.get(self, "schema_name") + + @property + @pulumi.getter(name="secretArn") + def secret_arn(self) -> str: + return pulumi.get(self, "secret_arn") + + @property + @pulumi.getter(name="tableName") + def table_name(self) -> str: + return pulumi.get(self, "table_name") + + @property + @pulumi.getter(name="tableSchema") + def table_schema(self) -> 'outputs.ConfiguredTableSnowflakeTableSchemaProperties': + return pulumi.get(self, "table_schema") + + +@pulumi.output_type +class ConfiguredTableSnowflakeTableSchemaProperties(dict): + def __init__(__self__, *, + v1: Sequence['outputs.ConfiguredTableSnowflakeTableSchemaV1']): + pulumi.set(__self__, "v1", v1) + + @property + @pulumi.getter + def v1(self) -> Sequence['outputs.ConfiguredTableSnowflakeTableSchemaV1']: + return pulumi.get(self, "v1") + + +@pulumi.output_type +class ConfiguredTableSnowflakeTableSchemaV1(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "columnName": + suggest = "column_name" + elif key == "columnType": + suggest = "column_type" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ConfiguredTableSnowflakeTableSchemaV1. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ConfiguredTableSnowflakeTableSchemaV1.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ConfiguredTableSnowflakeTableSchemaV1.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + column_name: str, + column_type: str): + pulumi.set(__self__, "column_name", column_name) + pulumi.set(__self__, "column_type", column_type) + + @property + @pulumi.getter(name="columnName") + def column_name(self) -> str: + return pulumi.get(self, "column_name") + + @property + @pulumi.getter(name="columnType") + def column_type(self) -> str: + return pulumi.get(self, "column_type") + + +@pulumi.output_type +class ConfiguredTableTableReference0Properties(dict): def __init__(__self__, *, glue: 'outputs.ConfiguredTableGlueTableReference'): - """ - :param 'ConfiguredTableGlueTableReference' glue: If present, a reference to the AWS Glue table referred to by this table reference. - """ pulumi.set(__self__, "glue", glue) @property @pulumi.getter def glue(self) -> 'outputs.ConfiguredTableGlueTableReference': - """ - If present, a reference to the AWS Glue table referred to by this table reference. - """ return pulumi.get(self, "glue") +@pulumi.output_type +class ConfiguredTableTableReference1Properties(dict): + def __init__(__self__, *, + snowflake: 'outputs.ConfiguredTableSnowflakeTableReference'): + pulumi.set(__self__, "snowflake", snowflake) + + @property + @pulumi.getter + def snowflake(self) -> 'outputs.ConfiguredTableSnowflakeTableReference': + return pulumi.get(self, "snowflake") + + +@pulumi.output_type +class ConfiguredTableTableReference2Properties(dict): + def __init__(__self__, *, + athena: 'outputs.ConfiguredTableAthenaTableReference'): + pulumi.set(__self__, "athena", athena) + + @property + @pulumi.getter + def athena(self) -> 'outputs.ConfiguredTableAthenaTableReference': + return pulumi.get(self, "athena") + + @pulumi.output_type class IdMappingTableInputReferenceConfig(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/cloudformation/_inputs.py b/sdk/python/pulumi_aws_native/cloudformation/_inputs.py index 4c1c5382b8..6c26099815 100644 --- a/sdk/python/pulumi_aws_native/cloudformation/_inputs.py +++ b/sdk/python/pulumi_aws_native/cloudformation/_inputs.py @@ -706,15 +706,15 @@ class StackSetOperationPreferencesArgsDict(TypedDict): """ failure_tolerance_count: NotRequired[pulumi.Input[int]] """ - The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). """ failure_tolerance_percentage: NotRequired[pulumi.Input[int]] """ - The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. """ @@ -730,7 +730,7 @@ class StackSetOperationPreferencesArgsDict(TypedDict): """ The maximum percentage of accounts in which to perform this operation at one time. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. @@ -767,12 +767,12 @@ def __init__(__self__, *, If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar. - `SOFT_FAILURE_TOLERANCE` : This option decouples `FailureToleranceCount` from the actual concurrency. This allows stack set operations to run at the concurrency level set by the `MaxConcurrentCount` value, or `MaxConcurrentPercentage` , regardless of the number of failures. - :param pulumi.Input[int] failure_tolerance_count: The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + :param pulumi.Input[int] failure_tolerance_count: The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). - :param pulumi.Input[int] failure_tolerance_percentage: The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + :param pulumi.Input[int] failure_tolerance_percentage: The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. :param pulumi.Input[int] max_concurrent_count: The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of `FailureToleranceCount` . `MaxConcurrentCount` is at most one more than the `FailureToleranceCount` . @@ -782,7 +782,7 @@ def __init__(__self__, *, Conditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both. :param pulumi.Input[int] max_concurrent_percentage: The maximum percentage of accounts in which to perform this operation at one time. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. @@ -828,7 +828,7 @@ def concurrency_mode(self, value: Optional[pulumi.Input['StackSetConcurrencyMode @pulumi.getter(name="failureToleranceCount") def failure_tolerance_count(self) -> Optional[pulumi.Input[int]]: """ - The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). """ @@ -842,9 +842,9 @@ def failure_tolerance_count(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="failureTolerancePercentage") def failure_tolerance_percentage(self) -> Optional[pulumi.Input[int]]: """ - The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. """ @@ -876,7 +876,7 @@ def max_concurrent_percentage(self) -> Optional[pulumi.Input[int]]: """ The maximum percentage of accounts in which to perform this operation at one time. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. diff --git a/sdk/python/pulumi_aws_native/cloudformation/get_stack.py b/sdk/python/pulumi_aws_native/cloudformation/get_stack.py index 952698ca4c..bab888511f 100644 --- a/sdk/python/pulumi_aws_native/cloudformation/get_stack.py +++ b/sdk/python/pulumi_aws_native/cloudformation/get_stack.py @@ -92,7 +92,7 @@ def __init__(__self__, capabilities=None, change_set_id=None, creation_time=None @pulumi.getter def capabilities(self) -> Optional[Sequence['StackCapabilitiesItem']]: """ - In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` @@ -102,30 +102,30 @@ def capabilities(self) -> Optional[Sequence['StackCapabilitiesItem']]: - If you have IAM resources, you can specify either capability. - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. - - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) - For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . - `CAPABILITY_AUTO_EXPAND` - Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. > - > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. - For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . """ return pulumi.get(self, "capabilities") @@ -167,9 +167,9 @@ def disable_rollback(self) -> Optional[bool]: @pulumi.getter(name="enableTerminationProtection") def enable_termination_protection(self) -> Optional[bool]: """ - Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. - For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. """ return pulumi.get(self, "enable_termination_protection") @@ -225,9 +225,9 @@ def parent_id(self) -> Optional[str]: @pulumi.getter(name="roleArn") def role_arn(self) -> Optional[str]: """ - The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. - If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. """ return pulumi.get(self, "role_arn") @@ -253,7 +253,7 @@ def stack_id(self) -> Optional[str]: @pulumi.getter(name="stackPolicyBody") def stack_policy_body(self) -> Optional[Any]: """ - Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. """ @@ -287,7 +287,7 @@ def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: @pulumi.getter(name="templateBody") def template_body(self) -> Optional[Any]: """ - Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. diff --git a/sdk/python/pulumi_aws_native/cloudformation/outputs.py b/sdk/python/pulumi_aws_native/cloudformation/outputs.py index d3d629f813..cb97b02133 100644 --- a/sdk/python/pulumi_aws_native/cloudformation/outputs.py +++ b/sdk/python/pulumi_aws_native/cloudformation/outputs.py @@ -705,12 +705,12 @@ def __init__(__self__, *, If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar. - `SOFT_FAILURE_TOLERANCE` : This option decouples `FailureToleranceCount` from the actual concurrency. This allows stack set operations to run at the concurrency level set by the `MaxConcurrentCount` value, or `MaxConcurrentPercentage` , regardless of the number of failures. - :param int failure_tolerance_count: The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + :param int failure_tolerance_count: The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). - :param int failure_tolerance_percentage: The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + :param int failure_tolerance_percentage: The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. :param int max_concurrent_count: The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of `FailureToleranceCount` . `MaxConcurrentCount` is at most one more than the `FailureToleranceCount` . @@ -720,7 +720,7 @@ def __init__(__self__, *, Conditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both. :param int max_concurrent_percentage: The maximum percentage of accounts in which to perform this operation at one time. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. @@ -762,7 +762,7 @@ def concurrency_mode(self) -> Optional['StackSetConcurrencyMode']: @pulumi.getter(name="failureToleranceCount") def failure_tolerance_count(self) -> Optional[int]: """ - The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). """ @@ -772,9 +772,9 @@ def failure_tolerance_count(self) -> Optional[int]: @pulumi.getter(name="failureTolerancePercentage") def failure_tolerance_percentage(self) -> Optional[int]: """ - The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. + The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. """ @@ -798,7 +798,7 @@ def max_concurrent_percentage(self) -> Optional[int]: """ The maximum percentage of accounts in which to perform this operation at one time. - When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. + When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. diff --git a/sdk/python/pulumi_aws_native/cloudformation/stack.py b/sdk/python/pulumi_aws_native/cloudformation/stack.py index 8aaa3db362..ec31ca9e14 100644 --- a/sdk/python/pulumi_aws_native/cloudformation/stack.py +++ b/sdk/python/pulumi_aws_native/cloudformation/stack.py @@ -40,7 +40,7 @@ def __init__(__self__, *, timeout_in_minutes: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a Stack resource. - :param pulumi.Input[Sequence[pulumi.Input['StackCapabilitiesItem']]] capabilities: In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + :param pulumi.Input[Sequence[pulumi.Input['StackCapabilitiesItem']]] capabilities: In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` @@ -50,37 +50,37 @@ def __init__(__self__, *, - If you have IAM resources, you can specify either capability. - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. - - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) - For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . - `CAPABILITY_AUTO_EXPAND` - Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. > - > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. - For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . :param pulumi.Input[str] description: A user-defined description associated with the stack. :param pulumi.Input[bool] disable_rollback: Set to `true` to disable rollback of the stack if stack creation failed. You can specify either `DisableRollback` or `OnFailure` , but not both. Default: `false` - :param pulumi.Input[bool] enable_termination_protection: Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + :param pulumi.Input[bool] enable_termination_protection: Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. - For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_arns: The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI). :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. @@ -89,24 +89,24 @@ def __init__(__self__, *, Conditional. Required if the nested stack requires input parameters. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. - :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. - If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. :param pulumi.Input[str] stack_name: The name that's associated with the stack. The name must be unique in the Region in which you are creating the stack. > A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetical character and can't be longer than 128 characters. - :param Any stack_policy_body: Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + :param Any stack_policy_body: Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. :param pulumi.Input[str] stack_policy_url: Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. :param pulumi.Input[str] stack_status_reason: Success/failure message associated with the stack status. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. - :param Any template_body: Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + :param Any template_body: Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. - :param pulumi.Input[str] template_url: Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + :param pulumi.Input[str] template_url: Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. :param pulumi.Input[int] timeout_in_minutes: The length of time, in minutes, that CloudFormation waits for the nested stack to reach the `CREATE_COMPLETE` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the `CREATE_COMPLETE` state, it marks the nested stack resource as `CREATE_COMPLETE` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches `CREATE_COMPLETE` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. @@ -148,7 +148,7 @@ def __init__(__self__, *, @pulumi.getter def capabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StackCapabilitiesItem']]]]: """ - In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` @@ -158,30 +158,30 @@ def capabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StackCapa - If you have IAM resources, you can specify either capability. - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. - - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) - For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . - `CAPABILITY_AUTO_EXPAND` - Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. > - > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. - For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . """ return pulumi.get(self, "capabilities") @@ -219,9 +219,9 @@ def disable_rollback(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="enableTerminationProtection") def enable_termination_protection(self) -> Optional[pulumi.Input[bool]]: """ - Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. - For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. """ return pulumi.get(self, "enable_termination_protection") @@ -263,9 +263,9 @@ def parameters(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @pulumi.getter(name="roleArn") def role_arn(self) -> Optional[pulumi.Input[str]]: """ - The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. - If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. """ return pulumi.get(self, "role_arn") @@ -291,7 +291,7 @@ def stack_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="stackPolicyBody") def stack_policy_body(self) -> Optional[Any]: """ - Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. """ @@ -341,7 +341,7 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs. @pulumi.getter(name="templateBody") def template_body(self) -> Optional[Any]: """ - Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. @@ -357,7 +357,7 @@ def template_body(self, value: Optional[Any]): @pulumi.getter(name="templateUrl") def template_url(self) -> Optional[pulumi.Input[str]]: """ - Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. """ @@ -408,7 +408,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input['StackCapabilitiesItem']]] capabilities: In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + :param pulumi.Input[Sequence[pulumi.Input['StackCapabilitiesItem']]] capabilities: In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` @@ -418,37 +418,37 @@ def __init__(__self__, - If you have IAM resources, you can specify either capability. - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. - - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) - For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . - `CAPABILITY_AUTO_EXPAND` - Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. > - > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. - For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . :param pulumi.Input[str] description: A user-defined description associated with the stack. :param pulumi.Input[bool] disable_rollback: Set to `true` to disable rollback of the stack if stack creation failed. You can specify either `DisableRollback` or `OnFailure` , but not both. Default: `false` - :param pulumi.Input[bool] enable_termination_protection: Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + :param pulumi.Input[bool] enable_termination_protection: Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. - For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_arns: The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI). :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. @@ -457,24 +457,24 @@ def __init__(__self__, Conditional. Required if the nested stack requires input parameters. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. - :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. - If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. :param pulumi.Input[str] stack_name: The name that's associated with the stack. The name must be unique in the Region in which you are creating the stack. > A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetical character and can't be longer than 128 characters. - :param Any stack_policy_body: Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + :param Any stack_policy_body: Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. :param pulumi.Input[str] stack_policy_url: Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. :param pulumi.Input[str] stack_status_reason: Success/failure message associated with the stack status. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. - :param Any template_body: Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + :param Any template_body: Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. - :param pulumi.Input[str] template_url: Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + :param pulumi.Input[str] template_url: Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. :param pulumi.Input[int] timeout_in_minutes: The length of time, in minutes, that CloudFormation waits for the nested stack to reach the `CREATE_COMPLETE` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the `CREATE_COMPLETE` state, it marks the nested stack resource as `CREATE_COMPLETE` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches `CREATE_COMPLETE` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. @@ -605,7 +605,7 @@ def get(resource_name: str, @pulumi.getter def capabilities(self) -> pulumi.Output[Optional[Sequence['StackCapabilitiesItem']]]: """ - In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack. + In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack. - `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM` @@ -615,30 +615,30 @@ def capabilities(self) -> pulumi.Output[Optional[Sequence['StackCapabilitiesItem - If you have IAM resources, you can specify either capability. - If you have IAM resources with custom names, you *must* specify `CAPABILITY_NAMED_IAM` . - - If you don't specify either of these capabilities, AWS CloudFormation returns an `InsufficientCapabilities` error. + - If you don't specify either of these capabilities, CloudFormation returns an `InsufficientCapabilities` error. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary. - - [`AWS::IAM::AccessKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html) - - [`AWS::IAM::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html) - - [`AWS::IAM::InstanceProfile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) - - [`AWS::IAM::Policy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html) - - [`AWS::IAM::Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) - - [`AWS::IAM::User`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html) - - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html) + - [AWS::IAM::AccessKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html) + - [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html) + - [AWS::IAM::InstanceProfile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html) + - [AWS::IAM::Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) + - [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) + - [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html) + - [`AWS::IAM::UserToGroupAddition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html) - For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . + For more information, see [Acknowledging IAM resources in CloudFormation templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities) in the *AWS CloudFormation User Guide* . - `CAPABILITY_AUTO_EXPAND` - Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by AWS CloudFormation . + Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the [AWS::Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-include.html) and [AWS::Serverless](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) transforms, which are macros hosted by CloudFormation . If you want to create a stack from a stack template that contains macros *and* nested stacks, you must create the stack directly from the template using this capability. > You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs. > - > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified. + > Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified. - For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) . + For more information, see [Perform custom processing on CloudFormation templates with template macros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) in the *AWS CloudFormation User Guide* . """ return pulumi.get(self, "capabilities") @@ -680,9 +680,9 @@ def disable_rollback(self) -> pulumi.Output[Optional[bool]]: @pulumi.getter(name="enableTerminationProtection") def enable_termination_protection(self) -> pulumi.Output[Optional[bool]]: """ - Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. + Whether to enable termination protection on the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) in the *AWS CloudFormation User Guide* . Termination protection is deactivated on stacks by default. - For [nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) , termination protection is set on the root stack and can't be changed directly on the nested stack. + For nested stacks, termination protection is set on the root stack and can't be changed directly on the nested stack. """ return pulumi.get(self, "enable_termination_protection") @@ -738,9 +738,9 @@ def parent_id(self) -> pulumi.Output[str]: @pulumi.getter(name="roleArn") def role_arn(self) -> pulumi.Output[Optional[str]]: """ - The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. + The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to create the stack. CloudFormation uses the role's credentials to make calls on your behalf. CloudFormation always uses this role for all future operations on the stack. Provided that users have permission to operate on the stack, CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege. - If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that's generated from your user credentials. + If you don't specify a value, CloudFormation uses the role that was previously associated with the stack. If no role is available, CloudFormation uses a temporary session that's generated from your user credentials. """ return pulumi.get(self, "role_arn") @@ -776,7 +776,7 @@ def stack_name(self) -> pulumi.Output[str]: @pulumi.getter(name="stackPolicyBody") def stack_policy_body(self) -> pulumi.Output[Optional[Any]]: """ - Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. + Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) in the *AWS CloudFormation User Guide* . You can specify either the `StackPolicyBody` or the `StackPolicyURL` parameter, but not both. Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::CloudFormation::Stack` for more information about the expected schema for this property. """ @@ -818,7 +818,7 @@ def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: @pulumi.getter(name="templateBody") def template_body(self) -> pulumi.Output[Optional[Any]]: """ - Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) in the AWS CloudFormation User Guide. + Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. Conditional: You must specify either the `TemplateBody` or the `TemplateURL` parameter, but not both. @@ -830,7 +830,7 @@ def template_body(self) -> pulumi.Output[Optional[Any]]: @pulumi.getter(name="templateUrl") def template_url(self) -> pulumi.Output[Optional[str]]: """ - Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . + Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. """ diff --git a/sdk/python/pulumi_aws_native/cloudformation/stack_set.py b/sdk/python/pulumi_aws_native/cloudformation/stack_set.py index 5f86fcb52b..a11c089a06 100644 --- a/sdk/python/pulumi_aws_native/cloudformation/stack_set.py +++ b/sdk/python/pulumi_aws_native/cloudformation/stack_set.py @@ -49,7 +49,7 @@ def __init__(__self__, *, :param pulumi.Input[str] description: A description of the stack set. You can use the description to identify the stack set's purpose or other important information. :param pulumi.Input[str] execution_role_name: The name of the IAM execution role to use to create the stack set. If you do not specify an execution role, AWS CloudFormation uses the AWSCloudFormationStackSetExecutionRole role for the stack set operation. :param pulumi.Input['ManagedExecutionPropertiesArgs'] managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. - :param pulumi.Input['StackSetOperationPreferencesArgs'] operation_preferences: The user-specified preferences for how AWS CloudFormation performs a stack set operation. + :param pulumi.Input['StackSetOperationPreferencesArgs'] operation_preferences: The user-specified preferences for how CloudFormation performs a stack set operation. :param pulumi.Input[Sequence[pulumi.Input['StackSetParameterArgs']]] parameters: The input parameters for the stack set template. :param pulumi.Input[Sequence[pulumi.Input['StackSetStackInstancesArgs']]] stack_instances_group: A group of stack instances with parameters in some specific accounts and regions. :param pulumi.Input[str] stack_set_name: The name to associate with the stack set. The name must be unique in the Region where you create your stack set. @@ -187,7 +187,7 @@ def managed_execution(self, value: Optional[pulumi.Input['ManagedExecutionProper @pulumi.getter(name="operationPreferences") def operation_preferences(self) -> Optional[pulumi.Input['StackSetOperationPreferencesArgs']]: """ - The user-specified preferences for how AWS CloudFormation performs a stack set operation. + The user-specified preferences for how CloudFormation performs a stack set operation. """ return pulumi.get(self, "operation_preferences") @@ -301,7 +301,7 @@ def __init__(__self__, :param pulumi.Input[str] description: A description of the stack set. You can use the description to identify the stack set's purpose or other important information. :param pulumi.Input[str] execution_role_name: The name of the IAM execution role to use to create the stack set. If you do not specify an execution role, AWS CloudFormation uses the AWSCloudFormationStackSetExecutionRole role for the stack set operation. :param pulumi.Input[Union['ManagedExecutionPropertiesArgs', 'ManagedExecutionPropertiesArgsDict']] managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. - :param pulumi.Input[Union['StackSetOperationPreferencesArgs', 'StackSetOperationPreferencesArgsDict']] operation_preferences: The user-specified preferences for how AWS CloudFormation performs a stack set operation. + :param pulumi.Input[Union['StackSetOperationPreferencesArgs', 'StackSetOperationPreferencesArgsDict']] operation_preferences: The user-specified preferences for how CloudFormation performs a stack set operation. :param pulumi.Input[Sequence[pulumi.Input[Union['StackSetParameterArgs', 'StackSetParameterArgsDict']]]] parameters: The input parameters for the stack set template. :param pulumi.Input['StackSetPermissionModel'] permission_model: Describes how the IAM roles required for stack set operations are created. By default, SELF-MANAGED is specified. :param pulumi.Input[Sequence[pulumi.Input[Union['StackSetStackInstancesArgs', 'StackSetStackInstancesArgsDict']]]] stack_instances_group: A group of stack instances with parameters in some specific accounts and regions. @@ -478,7 +478,7 @@ def managed_execution(self) -> pulumi.Output[Optional['outputs.ManagedExecutionP @pulumi.getter(name="operationPreferences") def operation_preferences(self) -> pulumi.Output[Optional['outputs.StackSetOperationPreferences']]: """ - The user-specified preferences for how AWS CloudFormation performs a stack set operation. + The user-specified preferences for how CloudFormation performs a stack set operation. """ return pulumi.get(self, "operation_preferences") diff --git a/sdk/python/pulumi_aws_native/cloudfront/_enums.py b/sdk/python/pulumi_aws_native/cloudfront/_enums.py index 6f1fee5424..645f769ee1 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/_enums.py +++ b/sdk/python/pulumi_aws_native/cloudfront/_enums.py @@ -7,6 +7,7 @@ __all__ = [ 'ContinuousDeploymentPolicyConfigType', 'ContinuousDeploymentPolicyTrafficConfigType', + 'DistributionOriginGroupSelectionCriteria', 'MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatus', ] @@ -27,6 +28,11 @@ class ContinuousDeploymentPolicyTrafficConfigType(str, Enum): SINGLE_HEADER = "SingleHeader" +class DistributionOriginGroupSelectionCriteria(str, Enum): + DEFAULT = "default" + MEDIA_QUALITY_BASED = "media-quality-based" + + class MonitoringSubscriptionRealtimeMetricsSubscriptionConfigRealtimeMetricsSubscriptionStatus(str, Enum): """ A flag that indicates whether additional CloudWatch metrics are enabled for a given CloudFront distribution. diff --git a/sdk/python/pulumi_aws_native/cloudfront/_inputs.py b/sdk/python/pulumi_aws_native/cloudfront/_inputs.py index e1a6a48b83..0588352597 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/_inputs.py +++ b/sdk/python/pulumi_aws_native/cloudfront/_inputs.py @@ -60,6 +60,8 @@ 'DistributionFunctionAssociationArgsDict', 'DistributionGeoRestrictionArgs', 'DistributionGeoRestrictionArgsDict', + 'DistributionGrpcConfigArgs', + 'DistributionGrpcConfigArgsDict', 'DistributionLambdaFunctionAssociationArgs', 'DistributionLambdaFunctionAssociationArgsDict', 'DistributionLegacyCustomOriginArgs', @@ -1233,6 +1235,10 @@ class DistributionCacheBehaviorArgsDict(TypedDict): """ A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior. """ + grpc_config: NotRequired[pulumi.Input['DistributionGrpcConfigArgsDict']] + """ + The gRPC configuration for your cache behavior. + """ lambda_function_associations: NotRequired[pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgsDict']]]] """ A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. @@ -1292,6 +1298,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[pulumi.Input[str]] = None, forwarded_values: Optional[pulumi.Input['DistributionForwardedValuesArgs']] = None, function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionFunctionAssociationArgs']]]] = None, + grpc_config: Optional[pulumi.Input['DistributionGrpcConfigArgs']] = None, lambda_function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgs']]]] = None, max_ttl: Optional[pulumi.Input[float]] = None, min_ttl: Optional[pulumi.Input[float]] = None, @@ -1344,6 +1351,7 @@ def __init__(__self__, *, 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. :param pulumi.Input[Sequence[pulumi.Input['DistributionFunctionAssociationArgs']]] function_associations: A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior. + :param pulumi.Input['DistributionGrpcConfigArgs'] grpc_config: The gRPC configuration for your cache behavior. :param pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgs']]] lambda_function_associations: A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. :param pulumi.Input[float] max_ttl: 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.html) in the *Amazon CloudFront Developer Guide*. @@ -1379,6 +1387,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -1554,6 +1564,18 @@ def function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[' def function_associations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionFunctionAssociationArgs']]]]): pulumi.set(self, "function_associations", value) + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional[pulumi.Input['DistributionGrpcConfigArgs']]: + """ + The gRPC configuration for your cache behavior. + """ + return pulumi.get(self, "grpc_config") + + @grpc_config.setter + def grpc_config(self, value: Optional[pulumi.Input['DistributionGrpcConfigArgs']]): + pulumi.set(self, "grpc_config", value) + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgs']]]]: @@ -2627,6 +2649,10 @@ class DistributionDefaultCacheBehaviorArgsDict(TypedDict): """ A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior. """ + grpc_config: NotRequired[pulumi.Input['DistributionGrpcConfigArgsDict']] + """ + The gRPC configuration for your cache behavior. + """ lambda_function_associations: NotRequired[pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgsDict']]]] """ A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. @@ -2685,6 +2711,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[pulumi.Input[str]] = None, forwarded_values: Optional[pulumi.Input['DistributionForwardedValuesArgs']] = None, function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionFunctionAssociationArgs']]]] = None, + grpc_config: Optional[pulumi.Input['DistributionGrpcConfigArgs']] = None, lambda_function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgs']]]] = None, max_ttl: Optional[pulumi.Input[float]] = None, min_ttl: Optional[pulumi.Input[float]] = None, @@ -2727,6 +2754,7 @@ def __init__(__self__, *, 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. :param pulumi.Input[Sequence[pulumi.Input['DistributionFunctionAssociationArgs']]] function_associations: A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior. + :param pulumi.Input['DistributionGrpcConfigArgs'] grpc_config: The gRPC configuration for your cache behavior. :param pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgs']]] lambda_function_associations: A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. :param pulumi.Input[float] max_ttl: 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.html) in the *Amazon CloudFront Developer Guide*. @@ -2761,6 +2789,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -2921,6 +2951,18 @@ def function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[' def function_associations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionFunctionAssociationArgs']]]]): pulumi.set(self, "function_associations", value) + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional[pulumi.Input['DistributionGrpcConfigArgs']]: + """ + The gRPC configuration for your cache behavior. + """ + return pulumi.get(self, "grpc_config") + + @grpc_config.setter + def grpc_config(self, value: Optional[pulumi.Input['DistributionGrpcConfigArgs']]): + pulumi.set(self, "grpc_config", value) + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributionLambdaFunctionAssociationArgs']]]]: @@ -3314,6 +3356,37 @@ def locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "locations", value) +if not MYPY: + class DistributionGrpcConfigArgsDict(TypedDict): + enabled: pulumi.Input[bool] + """ + Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + """ +elif False: + DistributionGrpcConfigArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DistributionGrpcConfigArgs: + def __init__(__self__, *, + enabled: pulumi.Input[bool]): + """ + :param pulumi.Input[bool] enabled: Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + """ + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> pulumi.Input[bool]: + """ + Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: pulumi.Input[bool]): + pulumi.set(self, "enabled", value) + + if not MYPY: class DistributionLambdaFunctionAssociationArgsDict(TypedDict): """ @@ -3588,7 +3661,7 @@ class DistributionLoggingArgsDict(TypedDict): """ A complex type that controls whether access logs are written for the distribution. """ - bucket: pulumi.Input[str] + bucket: NotRequired[pulumi.Input[str]] """ The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. """ @@ -3606,7 +3679,7 @@ class DistributionLoggingArgsDict(TypedDict): @pulumi.input_type class DistributionLoggingArgs: def __init__(__self__, *, - bucket: pulumi.Input[str], + bucket: Optional[pulumi.Input[str]] = None, include_cookies: Optional[pulumi.Input[bool]] = None, prefix: Optional[pulumi.Input[str]] = None): """ @@ -3615,7 +3688,8 @@ def __init__(__self__, *, :param pulumi.Input[bool] include_cookies: Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. :param pulumi.Input[str] prefix: An optional string that you want CloudFront to prefix to the access log ``filenames`` for this distribution, for example, ``myprefix/``. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty ``Prefix`` element in the ``Logging`` element. """ - pulumi.set(__self__, "bucket", bucket) + if bucket is not None: + pulumi.set(__self__, "bucket", bucket) if include_cookies is not None: pulumi.set(__self__, "include_cookies", include_cookies) if prefix is not None: @@ -3623,14 +3697,14 @@ def __init__(__self__, *, @property @pulumi.getter - def bucket(self) -> pulumi.Input[str]: + def bucket(self) -> Optional[pulumi.Input[str]]: """ The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. """ return pulumi.get(self, "bucket") @bucket.setter - def bucket(self, value: pulumi.Input[str]): + def bucket(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "bucket", value) @property @@ -3908,6 +3982,10 @@ class DistributionOriginGroupArgsDict(TypedDict): """ A complex type that contains information about the origins in an origin group. """ + selection_criteria: NotRequired[pulumi.Input['DistributionOriginGroupSelectionCriteria']] + """ + The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + """ elif False: DistributionOriginGroupArgsDict: TypeAlias = Mapping[str, Any] @@ -3916,16 +3994,20 @@ class DistributionOriginGroupArgs: def __init__(__self__, *, failover_criteria: pulumi.Input['DistributionOriginGroupFailoverCriteriaArgs'], id: pulumi.Input[str], - members: pulumi.Input['DistributionOriginGroupMembersArgs']): + members: pulumi.Input['DistributionOriginGroupMembersArgs'], + selection_criteria: Optional[pulumi.Input['DistributionOriginGroupSelectionCriteria']] = None): """ An origin group includes two origins (a primary origin and a second origin to failover to) and a failover criteria that you specify. You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specify the origin group instead of a single origin, and CloudFront will failover from the primary origin to the second origin under the failover conditions that you've chosen. :param pulumi.Input['DistributionOriginGroupFailoverCriteriaArgs'] failover_criteria: A complex type that contains information about the failover criteria for an origin group. :param pulumi.Input[str] id: The origin group's ID. :param pulumi.Input['DistributionOriginGroupMembersArgs'] members: A complex type that contains information about the origins in an origin group. + :param pulumi.Input['DistributionOriginGroupSelectionCriteria'] selection_criteria: The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . """ pulumi.set(__self__, "failover_criteria", failover_criteria) pulumi.set(__self__, "id", id) pulumi.set(__self__, "members", members) + if selection_criteria is not None: + pulumi.set(__self__, "selection_criteria", selection_criteria) @property @pulumi.getter(name="failoverCriteria") @@ -3963,6 +4045,18 @@ def members(self) -> pulumi.Input['DistributionOriginGroupMembersArgs']: def members(self, value: pulumi.Input['DistributionOriginGroupMembersArgs']): pulumi.set(self, "members", value) + @property + @pulumi.getter(name="selectionCriteria") + def selection_criteria(self) -> Optional[pulumi.Input['DistributionOriginGroupSelectionCriteria']]: + """ + The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + """ + return pulumi.get(self, "selection_criteria") + + @selection_criteria.setter + def selection_criteria(self, value: Optional[pulumi.Input['DistributionOriginGroupSelectionCriteria']]): + pulumi.set(self, "selection_criteria", value) + if not MYPY: class DistributionOriginShieldArgsDict(TypedDict): diff --git a/sdk/python/pulumi_aws_native/cloudfront/distribution.py b/sdk/python/pulumi_aws_native/cloudfront/distribution.py index 4ffa8a336e..cf6f418668 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/distribution.py +++ b/sdk/python/pulumi_aws_native/cloudfront/distribution.py @@ -16,6 +16,7 @@ from . import outputs from .. import _inputs as _root_inputs from .. import outputs as _root_outputs +from ._enums import * from ._inputs import * __all__ = ['DistributionArgs', 'Distribution'] diff --git a/sdk/python/pulumi_aws_native/cloudfront/get_distribution.py b/sdk/python/pulumi_aws_native/cloudfront/get_distribution.py index f0b18fe465..084d0af592 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/get_distribution.py +++ b/sdk/python/pulumi_aws_native/cloudfront/get_distribution.py @@ -15,6 +15,7 @@ from .. import _utilities from . import outputs from .. import outputs as _root_outputs +from ._enums import * __all__ = [ 'GetDistributionResult', diff --git a/sdk/python/pulumi_aws_native/cloudfront/outputs.py b/sdk/python/pulumi_aws_native/cloudfront/outputs.py index 51e151ffe2..cef30100ed 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/outputs.py +++ b/sdk/python/pulumi_aws_native/cloudfront/outputs.py @@ -39,6 +39,7 @@ 'DistributionForwardedValues', 'DistributionFunctionAssociation', 'DistributionGeoRestriction', + 'DistributionGrpcConfig', 'DistributionLambdaFunctionAssociation', 'DistributionLegacyCustomOrigin', 'DistributionLegacyS3Origin', @@ -935,6 +936,8 @@ def __key_warning(key: str): suggest = "forwarded_values" elif key == "functionAssociations": suggest = "function_associations" + elif key == "grpcConfig": + suggest = "grpc_config" elif key == "lambdaFunctionAssociations": suggest = "lambda_function_associations" elif key == "maxTtl": @@ -977,6 +980,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[str] = None, forwarded_values: Optional['outputs.DistributionForwardedValues'] = None, function_associations: Optional[Sequence['outputs.DistributionFunctionAssociation']] = None, + grpc_config: Optional['outputs.DistributionGrpcConfig'] = None, lambda_function_associations: Optional[Sequence['outputs.DistributionLambdaFunctionAssociation']] = None, max_ttl: Optional[float] = None, min_ttl: Optional[float] = None, @@ -1029,6 +1033,7 @@ def __init__(__self__, *, 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. :param Sequence['DistributionFunctionAssociation'] function_associations: A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior. + :param 'DistributionGrpcConfig' grpc_config: The gRPC configuration for your cache behavior. :param Sequence['DistributionLambdaFunctionAssociation'] lambda_function_associations: A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. :param float max_ttl: 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.html) in the *Amazon CloudFront Developer Guide*. @@ -1064,6 +1069,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -1195,6 +1202,14 @@ def function_associations(self) -> Optional[Sequence['outputs.DistributionFuncti """ return pulumi.get(self, "function_associations") + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional['outputs.DistributionGrpcConfig']: + """ + The gRPC configuration for your cache behavior. + """ + return pulumi.get(self, "grpc_config") + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[Sequence['outputs.DistributionLambdaFunctionAssociation']]: @@ -1963,6 +1978,8 @@ def __key_warning(key: str): suggest = "forwarded_values" elif key == "functionAssociations": suggest = "function_associations" + elif key == "grpcConfig": + suggest = "grpc_config" elif key == "lambdaFunctionAssociations": suggest = "lambda_function_associations" elif key == "maxTtl": @@ -2004,6 +2021,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[str] = None, forwarded_values: Optional['outputs.DistributionForwardedValues'] = None, function_associations: Optional[Sequence['outputs.DistributionFunctionAssociation']] = None, + grpc_config: Optional['outputs.DistributionGrpcConfig'] = None, lambda_function_associations: Optional[Sequence['outputs.DistributionLambdaFunctionAssociation']] = None, max_ttl: Optional[float] = None, min_ttl: Optional[float] = None, @@ -2046,6 +2064,7 @@ def __init__(__self__, *, 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. :param Sequence['DistributionFunctionAssociation'] function_associations: A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior. + :param 'DistributionGrpcConfig' grpc_config: The gRPC configuration for your cache behavior. :param Sequence['DistributionLambdaFunctionAssociation'] lambda_function_associations: A complex type that contains zero or more Lambda@Edge function associations for a cache behavior. :param float max_ttl: 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.html) in the *Amazon CloudFront Developer Guide*. @@ -2080,6 +2099,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -2200,6 +2221,14 @@ def function_associations(self) -> Optional[Sequence['outputs.DistributionFuncti """ return pulumi.get(self, "function_associations") + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional['outputs.DistributionGrpcConfig']: + """ + The gRPC configuration for your cache behavior. + """ + return pulumi.get(self, "grpc_config") + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[Sequence['outputs.DistributionLambdaFunctionAssociation']]: @@ -2511,6 +2540,24 @@ def locations(self) -> Optional[Sequence[str]]: return pulumi.get(self, "locations") +@pulumi.output_type +class DistributionGrpcConfig(dict): + def __init__(__self__, *, + enabled: bool): + """ + :param bool enabled: Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + """ + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> bool: + """ + Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins. + """ + return pulumi.get(self, "enabled") + + @pulumi.output_type class DistributionLambdaFunctionAssociation(dict): """ @@ -2766,7 +2813,7 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - bucket: str, + bucket: Optional[str] = None, include_cookies: Optional[bool] = None, prefix: Optional[str] = None): """ @@ -2775,7 +2822,8 @@ def __init__(__self__, *, :param bool include_cookies: Specifies whether you want CloudFront to include cookies in access logs, specify ``true`` for ``IncludeCookies``. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify ``false`` for ``IncludeCookies``. :param str prefix: An optional string that you want CloudFront to prefix to the access log ``filenames`` for this distribution, for example, ``myprefix/``. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty ``Prefix`` element in the ``Logging`` element. """ - pulumi.set(__self__, "bucket", bucket) + if bucket is not None: + pulumi.set(__self__, "bucket", bucket) if include_cookies is not None: pulumi.set(__self__, "include_cookies", include_cookies) if prefix is not None: @@ -2783,7 +2831,7 @@ def __init__(__self__, *, @property @pulumi.getter - def bucket(self) -> str: + def bucket(self) -> Optional[str]: """ The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``. """ @@ -3070,6 +3118,8 @@ def __key_warning(key: str): suggest = None if key == "failoverCriteria": suggest = "failover_criteria" + elif key == "selectionCriteria": + suggest = "selection_criteria" if suggest: pulumi.log.warn(f"Key '{key}' not found in DistributionOriginGroup. Access the value via the '{suggest}' property getter instead.") @@ -3085,16 +3135,20 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, failover_criteria: 'outputs.DistributionOriginGroupFailoverCriteria', id: str, - members: 'outputs.DistributionOriginGroupMembers'): + members: 'outputs.DistributionOriginGroupMembers', + selection_criteria: Optional['DistributionOriginGroupSelectionCriteria'] = None): """ An origin group includes two origins (a primary origin and a second origin to failover to) and a failover criteria that you specify. You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specify the origin group instead of a single origin, and CloudFront will failover from the primary origin to the second origin under the failover conditions that you've chosen. :param 'DistributionOriginGroupFailoverCriteria' failover_criteria: A complex type that contains information about the failover criteria for an origin group. :param str id: The origin group's ID. :param 'DistributionOriginGroupMembers' members: A complex type that contains information about the origins in an origin group. + :param 'DistributionOriginGroupSelectionCriteria' selection_criteria: The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . """ pulumi.set(__self__, "failover_criteria", failover_criteria) pulumi.set(__self__, "id", id) pulumi.set(__self__, "members", members) + if selection_criteria is not None: + pulumi.set(__self__, "selection_criteria", selection_criteria) @property @pulumi.getter(name="failoverCriteria") @@ -3120,6 +3174,14 @@ def members(self) -> 'outputs.DistributionOriginGroupMembers': """ return pulumi.get(self, "members") + @property + @pulumi.getter(name="selectionCriteria") + def selection_criteria(self) -> Optional['DistributionOriginGroupSelectionCriteria']: + """ + The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide* . + """ + return pulumi.get(self, "selection_criteria") + @pulumi.output_type class DistributionOriginGroupFailoverCriteria(dict): diff --git a/sdk/python/pulumi_aws_native/connect/_enums.py b/sdk/python/pulumi_aws_native/connect/_enums.py index 588ecb628d..48ea6eaeff 100644 --- a/sdk/python/pulumi_aws_native/connect/_enums.py +++ b/sdk/python/pulumi_aws_native/connect/_enums.py @@ -287,13 +287,18 @@ class RoutingProfileChannel(str, Enum): class RulePublishStatus(str, Enum): """ - The publish status of a rule, either draft or published. + The publish status of the rule. + *Allowed values*: ``DRAFT`` | ``PUBLISHED`` """ DRAFT = "DRAFT" PUBLISHED = "PUBLISHED" class RuleReferenceType(str, Enum): + """ + The type of the reference. ``DATE`` must be of type Epoch timestamp. + *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + """ URL = "URL" ATTACHMENT = "ATTACHMENT" NUMBER = "NUMBER" @@ -304,21 +309,23 @@ class RuleReferenceType(str, Enum): class RuleSendNotificationActionContentType(str, Enum): """ - The type of content. + Content type format. + *Allowed value*: ``PLAIN_TEXT`` """ PLAIN_TEXT = "PLAIN_TEXT" class RuleSendNotificationActionDeliveryMethod(str, Enum): """ - The means of delivery. + Notification delivery method. + *Allowed value*: ``EMAIL`` """ EMAIL = "EMAIL" class RuleTriggerEventSourceEventSourceName(str, Enum): """ - The name of event source. + The name of the event source. """ ON_CONTACT_EVALUATION_SUBMIT = "OnContactEvaluationSubmit" ON_POST_CALL_ANALYSIS_AVAILABLE = "OnPostCallAnalysisAvailable" diff --git a/sdk/python/pulumi_aws_native/connect/_inputs.py b/sdk/python/pulumi_aws_native/connect/_inputs.py index edc93a1610..0a396fb079 100644 --- a/sdk/python/pulumi_aws_native/connect/_inputs.py +++ b/sdk/python/pulumi_aws_native/connect/_inputs.py @@ -72,6 +72,8 @@ 'InstanceStorageConfigS3ConfigArgsDict', 'QueueOutboundCallerConfigArgs', 'QueueOutboundCallerConfigArgsDict', + 'QueueOutboundEmailConfigArgs', + 'QueueOutboundEmailConfigArgsDict', 'QuickConnectConfigArgs', 'QuickConnectConfigArgsDict', 'QuickConnectPhoneNumberQuickConnectConfigArgs', @@ -1588,10 +1590,19 @@ class HoursOfOperationOverrideArgsDict(TypedDict): Overrides attached to the hours of operation. """ effective_from: pulumi.Input[str] + """ + The date from which the hours of operation override would be effective. + """ effective_till: pulumi.Input[str] + """ + The date till which the hours of operation override would be effective. + """ override_config: pulumi.Input[Sequence[pulumi.Input['HoursOfOperationOverrideConfigArgsDict']]] override_name: pulumi.Input[str] hours_of_operation_override_id: NotRequired[pulumi.Input[str]] + """ + The identifier for the hours of operation override. + """ override_description: NotRequired[pulumi.Input[str]] elif False: HoursOfOperationOverrideArgsDict: TypeAlias = Mapping[str, Any] @@ -1607,6 +1618,9 @@ def __init__(__self__, *, override_description: Optional[pulumi.Input[str]] = None): """ Overrides attached to the hours of operation. + :param pulumi.Input[str] effective_from: The date from which the hours of operation override would be effective. + :param pulumi.Input[str] effective_till: The date till which the hours of operation override would be effective. + :param pulumi.Input[str] hours_of_operation_override_id: The identifier for the hours of operation override. """ pulumi.set(__self__, "effective_from", effective_from) pulumi.set(__self__, "effective_till", effective_till) @@ -1620,6 +1634,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="effectiveFrom") def effective_from(self) -> pulumi.Input[str]: + """ + The date from which the hours of operation override would be effective. + """ return pulumi.get(self, "effective_from") @effective_from.setter @@ -1629,6 +1646,9 @@ def effective_from(self, value: pulumi.Input[str]): @property @pulumi.getter(name="effectiveTill") def effective_till(self) -> pulumi.Input[str]: + """ + The date till which the hours of operation override would be effective. + """ return pulumi.get(self, "effective_till") @effective_till.setter @@ -1656,6 +1676,9 @@ def override_name(self, value: pulumi.Input[str]): @property @pulumi.getter(name="hoursOfOperationOverrideId") def hours_of_operation_override_id(self) -> Optional[pulumi.Input[str]]: + """ + The identifier for the hours of operation override. + """ return pulumi.get(self, "hours_of_operation_override_id") @hours_of_operation_override_id.setter @@ -2176,6 +2199,42 @@ def outbound_flow_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "outbound_flow_arn", value) +if not MYPY: + class QueueOutboundEmailConfigArgsDict(TypedDict): + """ + The outbound email address ID. + """ + outbound_email_address_id: NotRequired[pulumi.Input[str]] + """ + The identifier of the email address. + """ +elif False: + QueueOutboundEmailConfigArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class QueueOutboundEmailConfigArgs: + def __init__(__self__, *, + outbound_email_address_id: Optional[pulumi.Input[str]] = None): + """ + The outbound email address ID. + :param pulumi.Input[str] outbound_email_address_id: The identifier of the email address. + """ + if outbound_email_address_id is not None: + pulumi.set(__self__, "outbound_email_address_id", outbound_email_address_id) + + @property + @pulumi.getter(name="outboundEmailAddressId") + def outbound_email_address_id(self) -> Optional[pulumi.Input[str]]: + """ + The identifier of the email address. + """ + return pulumi.get(self, "outbound_email_address_id") + + @outbound_email_address_id.setter + def outbound_email_address_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "outbound_email_address_id", value) + + if not MYPY: class QuickConnectConfigArgsDict(TypedDict): """ @@ -2671,17 +2730,17 @@ def queue_arn(self, value: pulumi.Input[str]): if not MYPY: class RuleActionsArgsDict(TypedDict): """ - The list of actions that will be executed when a rule is triggered. + A list of actions to be run when the rule is triggered. """ assign_contact_category_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleAssignContactCategoryActionArgsDict']]]] """ - Information about the contact category action. The syntax can be empty, for example, `{}` . + Information about the contact category action. The syntax can be empty, for example, ``{}``. """ create_case_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleCreateCaseActionArgsDict']]]] end_associated_tasks_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleEndAssociatedTasksActionArgsDict']]]] event_bridge_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleEventBridgeActionArgsDict']]]] """ - Information about the EventBridge action. + Information about the EV action. """ send_notification_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleSendNotificationActionArgsDict']]]] """ @@ -2690,7 +2749,7 @@ class RuleActionsArgsDict(TypedDict): submit_auto_evaluation_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleSubmitAutoEvaluationActionArgsDict']]]] task_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleTaskActionArgsDict']]]] """ - Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ update_case_actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleUpdateCaseActionArgsDict']]]] elif False: @@ -2708,11 +2767,11 @@ def __init__(__self__, *, task_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleTaskActionArgs']]]] = None, update_case_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleUpdateCaseActionArgs']]]] = None): """ - The list of actions that will be executed when a rule is triggered. - :param pulumi.Input[Sequence[pulumi.Input['RuleAssignContactCategoryActionArgs']]] assign_contact_category_actions: Information about the contact category action. The syntax can be empty, for example, `{}` . - :param pulumi.Input[Sequence[pulumi.Input['RuleEventBridgeActionArgs']]] event_bridge_actions: Information about the EventBridge action. + A list of actions to be run when the rule is triggered. + :param pulumi.Input[Sequence[pulumi.Input['RuleAssignContactCategoryActionArgs']]] assign_contact_category_actions: Information about the contact category action. The syntax can be empty, for example, ``{}``. + :param pulumi.Input[Sequence[pulumi.Input['RuleEventBridgeActionArgs']]] event_bridge_actions: Information about the EV action. :param pulumi.Input[Sequence[pulumi.Input['RuleSendNotificationActionArgs']]] send_notification_actions: Information about the send notification action. - :param pulumi.Input[Sequence[pulumi.Input['RuleTaskActionArgs']]] task_actions: Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + :param pulumi.Input[Sequence[pulumi.Input['RuleTaskActionArgs']]] task_actions: Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ if assign_contact_category_actions is not None: pulumi.set(__self__, "assign_contact_category_actions", assign_contact_category_actions) @@ -2735,7 +2794,7 @@ def __init__(__self__, *, @pulumi.getter(name="assignContactCategoryActions") def assign_contact_category_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleAssignContactCategoryActionArgs']]]]: """ - Information about the contact category action. The syntax can be empty, for example, `{}` . + Information about the contact category action. The syntax can be empty, for example, ``{}``. """ return pulumi.get(self, "assign_contact_category_actions") @@ -2765,7 +2824,7 @@ def end_associated_tasks_actions(self, value: Optional[pulumi.Input[Sequence[pul @pulumi.getter(name="eventBridgeActions") def event_bridge_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleEventBridgeActionArgs']]]]: """ - Information about the EventBridge action. + Information about the EV action. """ return pulumi.get(self, "event_bridge_actions") @@ -2798,7 +2857,7 @@ def submit_auto_evaluation_actions(self, value: Optional[pulumi.Input[Sequence[p @pulumi.getter(name="taskActions") def task_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleTaskActionArgs']]]]: """ - Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ return pulumi.get(self, "task_actions") @@ -2836,14 +2895,8 @@ def __init__(__self__): if not MYPY: class RuleCreateCaseActionArgsDict(TypedDict): - """ - The definition for create case action. - """ fields: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgsDict']]] template_id: pulumi.Input[str] - """ - The Id of template. - """ elif False: RuleCreateCaseActionArgsDict: TypeAlias = Mapping[str, Any] @@ -2852,10 +2905,6 @@ class RuleCreateCaseActionArgs: def __init__(__self__, *, fields: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]], template_id: pulumi.Input[str]): - """ - The definition for create case action. - :param pulumi.Input[str] template_id: The Id of template. - """ pulumi.set(__self__, "fields", fields) pulumi.set(__self__, "template_id", template_id) @@ -2871,9 +2920,6 @@ def fields(self, value: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]]): @property @pulumi.getter(name="templateId") def template_id(self) -> pulumi.Input[str]: - """ - The Id of template. - """ return pulumi.get(self, "template_id") @template_id.setter @@ -2902,11 +2948,11 @@ def __init__(__self__): if not MYPY: class RuleEventBridgeActionArgsDict(TypedDict): """ - The definition for event bridge action. + The EV action definition. """ name: pulumi.Input[str] """ - The name of the event bridge action. + The name. """ elif False: RuleEventBridgeActionArgsDict: TypeAlias = Mapping[str, Any] @@ -2916,8 +2962,8 @@ class RuleEventBridgeActionArgs: def __init__(__self__, *, name: pulumi.Input[str]): """ - The definition for event bridge action. - :param pulumi.Input[str] name: The name of the event bridge action. + The EV action definition. + :param pulumi.Input[str] name: The name. """ pulumi.set(__self__, "name", name) @@ -2925,7 +2971,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - The name of the event bridge action. + The name. """ return pulumi.get(self, "name") @@ -2937,7 +2983,7 @@ def name(self, value: pulumi.Input[str]): if not MYPY: class RuleFieldValueArgsDict(TypedDict): """ - The value of the field. + Object for case field values. """ boolean_value: NotRequired[pulumi.Input[bool]] double_value: NotRequired[pulumi.Input[float]] @@ -2954,7 +3000,7 @@ def __init__(__self__, *, empty_value: Optional[Any] = None, string_value: Optional[pulumi.Input[str]] = None): """ - The value of the field. + Object for case field values. """ if boolean_value is not None: pulumi.set(__self__, "boolean_value", boolean_value) @@ -3004,13 +3050,7 @@ def string_value(self, value: Optional[pulumi.Input[str]]): if not MYPY: class RuleFieldArgsDict(TypedDict): - """ - The field of the case. - """ id: pulumi.Input[str] - """ - The Id of the field - """ value: pulumi.Input['RuleFieldValueArgsDict'] elif False: RuleFieldArgsDict: TypeAlias = Mapping[str, Any] @@ -3020,19 +3060,12 @@ class RuleFieldArgs: def __init__(__self__, *, id: pulumi.Input[str], value: pulumi.Input['RuleFieldValueArgs']): - """ - The field of the case. - :param pulumi.Input[str] id: The Id of the field - """ pulumi.set(__self__, "id", id) pulumi.set(__self__, "value", value) @property @pulumi.getter def id(self) -> pulumi.Input[str]: - """ - The Id of the field - """ return pulumi.get(self, "id") @id.setter @@ -3056,11 +3089,11 @@ class RuleNotificationRecipientTypeArgsDict(TypedDict): """ user_arns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - The list of recipients by user arns. + The Amazon Resource Name (ARN) of the user account. """ user_tags: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] """ - The collection of recipients who are identified by user tags + The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. """ elif False: RuleNotificationRecipientTypeArgsDict: TypeAlias = Mapping[str, Any] @@ -3072,8 +3105,8 @@ def __init__(__self__, *, user_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The type of notification recipient. - :param pulumi.Input[Sequence[pulumi.Input[str]]] user_arns: The list of recipients by user arns. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_tags: The collection of recipients who are identified by user tags + :param pulumi.Input[Sequence[pulumi.Input[str]]] user_arns: The Amazon Resource Name (ARN) of the user account. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] user_tags: The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. """ if user_arns is not None: pulumi.set(__self__, "user_arns", user_arns) @@ -3084,7 +3117,7 @@ def __init__(__self__, *, @pulumi.getter(name="userArns") def user_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - The list of recipients by user arns. + The Amazon Resource Name (ARN) of the user account. """ return pulumi.get(self, "user_arns") @@ -3096,7 +3129,7 @@ def user_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter(name="userTags") def user_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ - The collection of recipients who are identified by user tags + The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. """ return pulumi.get(self, "user_tags") @@ -3108,10 +3141,17 @@ def user_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]] if not MYPY: class RuleReferenceArgsDict(TypedDict): """ - A contact reference. + Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) """ type: pulumi.Input['RuleReferenceType'] + """ + The type of the reference. ``DATE`` must be of type Epoch timestamp. + *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + """ value: pulumi.Input[str] + """ + A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + """ elif False: RuleReferenceArgsDict: TypeAlias = Mapping[str, Any] @@ -3121,7 +3161,10 @@ def __init__(__self__, *, type: pulumi.Input['RuleReferenceType'], value: pulumi.Input[str]): """ - A contact reference. + Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) + :param pulumi.Input['RuleReferenceType'] type: The type of the reference. ``DATE`` must be of type Epoch timestamp. + *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + :param pulumi.Input[str] value: A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). """ pulumi.set(__self__, "type", type) pulumi.set(__self__, "value", value) @@ -3129,6 +3172,10 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> pulumi.Input['RuleReferenceType']: + """ + The type of the reference. ``DATE`` must be of type Epoch timestamp. + *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + """ return pulumi.get(self, "type") @type.setter @@ -3138,6 +3185,9 @@ def type(self, value: pulumi.Input['RuleReferenceType']): @property @pulumi.getter def value(self) -> pulumi.Input[str]: + """ + A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + """ return pulumi.get(self, "value") @value.setter @@ -3148,24 +3198,29 @@ def value(self, value: pulumi.Input[str]): if not MYPY: class RuleSendNotificationActionArgsDict(TypedDict): """ - The definition for sending notification action. + Information about the send notification action. """ content: pulumi.Input[str] """ - The content of notification. + Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ content_type: pulumi.Input['RuleSendNotificationActionContentType'] """ - The type of content. + Content type format. + *Allowed value*: ``PLAIN_TEXT`` """ delivery_method: pulumi.Input['RuleSendNotificationActionDeliveryMethod'] """ - The means of delivery. + Notification delivery method. + *Allowed value*: ``EMAIL`` """ recipient: pulumi.Input['RuleNotificationRecipientTypeArgsDict'] + """ + Notification recipient. + """ subject: NotRequired[pulumi.Input[str]] """ - The subject of notification. + The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ elif False: RuleSendNotificationActionArgsDict: TypeAlias = Mapping[str, Any] @@ -3179,11 +3234,14 @@ def __init__(__self__, *, recipient: pulumi.Input['RuleNotificationRecipientTypeArgs'], subject: Optional[pulumi.Input[str]] = None): """ - The definition for sending notification action. - :param pulumi.Input[str] content: The content of notification. - :param pulumi.Input['RuleSendNotificationActionContentType'] content_type: The type of content. - :param pulumi.Input['RuleSendNotificationActionDeliveryMethod'] delivery_method: The means of delivery. - :param pulumi.Input[str] subject: The subject of notification. + Information about the send notification action. + :param pulumi.Input[str] content: Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. + :param pulumi.Input['RuleSendNotificationActionContentType'] content_type: Content type format. + *Allowed value*: ``PLAIN_TEXT`` + :param pulumi.Input['RuleSendNotificationActionDeliveryMethod'] delivery_method: Notification delivery method. + *Allowed value*: ``EMAIL`` + :param pulumi.Input['RuleNotificationRecipientTypeArgs'] recipient: Notification recipient. + :param pulumi.Input[str] subject: The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -3196,7 +3254,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> pulumi.Input[str]: """ - The content of notification. + Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "content") @@ -3208,7 +3266,8 @@ def content(self, value: pulumi.Input[str]): @pulumi.getter(name="contentType") def content_type(self) -> pulumi.Input['RuleSendNotificationActionContentType']: """ - The type of content. + Content type format. + *Allowed value*: ``PLAIN_TEXT`` """ return pulumi.get(self, "content_type") @@ -3220,7 +3279,8 @@ def content_type(self, value: pulumi.Input['RuleSendNotificationActionContentTyp @pulumi.getter(name="deliveryMethod") def delivery_method(self) -> pulumi.Input['RuleSendNotificationActionDeliveryMethod']: """ - The means of delivery. + Notification delivery method. + *Allowed value*: ``EMAIL`` """ return pulumi.get(self, "delivery_method") @@ -3231,6 +3291,9 @@ def delivery_method(self, value: pulumi.Input['RuleSendNotificationActionDeliver @property @pulumi.getter def recipient(self) -> pulumi.Input['RuleNotificationRecipientTypeArgs']: + """ + Notification recipient. + """ return pulumi.get(self, "recipient") @recipient.setter @@ -3241,7 +3304,7 @@ def recipient(self, value: pulumi.Input['RuleNotificationRecipientTypeArgs']): @pulumi.getter def subject(self) -> Optional[pulumi.Input[str]]: """ - The subject of notification. + The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "subject") @@ -3252,13 +3315,7 @@ def subject(self, value: Optional[pulumi.Input[str]]): if not MYPY: class RuleSubmitAutoEvaluationActionArgsDict(TypedDict): - """ - The definition of submit auto evaluation action. - """ evaluation_form_arn: pulumi.Input[str] - """ - The Amazon Resource Name (ARN) of the evaluation form. - """ elif False: RuleSubmitAutoEvaluationActionArgsDict: TypeAlias = Mapping[str, Any] @@ -3266,18 +3323,11 @@ class RuleSubmitAutoEvaluationActionArgsDict(TypedDict): class RuleSubmitAutoEvaluationActionArgs: def __init__(__self__, *, evaluation_form_arn: pulumi.Input[str]): - """ - The definition of submit auto evaluation action. - :param pulumi.Input[str] evaluation_form_arn: The Amazon Resource Name (ARN) of the evaluation form. - """ pulumi.set(__self__, "evaluation_form_arn", evaluation_form_arn) @property @pulumi.getter(name="evaluationFormArn") def evaluation_form_arn(self) -> pulumi.Input[str]: - """ - The Amazon Resource Name (ARN) of the evaluation form. - """ return pulumi.get(self, "evaluation_form_arn") @evaluation_form_arn.setter @@ -3288,23 +3338,23 @@ def evaluation_form_arn(self, value: pulumi.Input[str]): if not MYPY: class RuleTaskActionArgsDict(TypedDict): """ - The definition of task action. + Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ contact_flow_arn: pulumi.Input[str] """ - The Amazon Resource Name (ARN) of the contact flow. + The Amazon Resource Name (ARN) of the flow. """ name: pulumi.Input[str] """ - The name which appears in the agent's Contact Control Panel (CCP). + The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ description: NotRequired[pulumi.Input[str]] """ - The description which appears in the agent's Contact Control Panel (CCP). + The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ references: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['RuleReferenceArgsDict']]]] """ - A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) """ elif False: RuleTaskActionArgsDict: TypeAlias = Mapping[str, Any] @@ -3317,11 +3367,11 @@ def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, references: Optional[pulumi.Input[Mapping[str, pulumi.Input['RuleReferenceArgs']]]] = None): """ - The definition of task action. - :param pulumi.Input[str] contact_flow_arn: The Amazon Resource Name (ARN) of the contact flow. - :param pulumi.Input[str] name: The name which appears in the agent's Contact Control Panel (CCP). - :param pulumi.Input[str] description: The description which appears in the agent's Contact Control Panel (CCP). - :param pulumi.Input[Mapping[str, pulumi.Input['RuleReferenceArgs']]] references: A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` + :param pulumi.Input[str] contact_flow_arn: The Amazon Resource Name (ARN) of the flow. + :param pulumi.Input[str] name: The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. + :param pulumi.Input[str] description: The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. + :param pulumi.Input[Mapping[str, pulumi.Input['RuleReferenceArgs']]] references: Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) """ pulumi.set(__self__, "contact_flow_arn", contact_flow_arn) pulumi.set(__self__, "name", name) @@ -3334,7 +3384,7 @@ def __init__(__self__, *, @pulumi.getter(name="contactFlowArn") def contact_flow_arn(self) -> pulumi.Input[str]: """ - The Amazon Resource Name (ARN) of the contact flow. + The Amazon Resource Name (ARN) of the flow. """ return pulumi.get(self, "contact_flow_arn") @@ -3346,7 +3396,7 @@ def contact_flow_arn(self, value: pulumi.Input[str]): @pulumi.getter def name(self) -> pulumi.Input[str]: """ - The name which appears in the agent's Contact Control Panel (CCP). + The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "name") @@ -3358,7 +3408,7 @@ def name(self, value: pulumi.Input[str]): @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: """ - The description which appears in the agent's Contact Control Panel (CCP). + The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "description") @@ -3370,7 +3420,7 @@ def description(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def references(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['RuleReferenceArgs']]]]: """ - A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) """ return pulumi.get(self, "references") @@ -3382,15 +3432,15 @@ def references(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Rul if not MYPY: class RuleTriggerEventSourceArgsDict(TypedDict): """ - The event source that will trigger the rule. + The name of the event source. """ event_source_name: pulumi.Input['RuleTriggerEventSourceEventSourceName'] """ - The name of event source. + The name of the event source. """ integration_association_arn: NotRequired[pulumi.Input[str]] """ - The Amazon Resource Name (ARN) for the AppIntegration association. + The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ elif False: RuleTriggerEventSourceArgsDict: TypeAlias = Mapping[str, Any] @@ -3401,9 +3451,9 @@ def __init__(__self__, *, event_source_name: pulumi.Input['RuleTriggerEventSourceEventSourceName'], integration_association_arn: Optional[pulumi.Input[str]] = None): """ - The event source that will trigger the rule. - :param pulumi.Input['RuleTriggerEventSourceEventSourceName'] event_source_name: The name of event source. - :param pulumi.Input[str] integration_association_arn: The Amazon Resource Name (ARN) for the AppIntegration association. + The name of the event source. + :param pulumi.Input['RuleTriggerEventSourceEventSourceName'] event_source_name: The name of the event source. + :param pulumi.Input[str] integration_association_arn: The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ pulumi.set(__self__, "event_source_name", event_source_name) if integration_association_arn is not None: @@ -3413,7 +3463,7 @@ def __init__(__self__, *, @pulumi.getter(name="eventSourceName") def event_source_name(self) -> pulumi.Input['RuleTriggerEventSourceEventSourceName']: """ - The name of event source. + The name of the event source. """ return pulumi.get(self, "event_source_name") @@ -3425,7 +3475,7 @@ def event_source_name(self, value: pulumi.Input['RuleTriggerEventSourceEventSour @pulumi.getter(name="integrationAssociationArn") def integration_association_arn(self) -> Optional[pulumi.Input[str]]: """ - The Amazon Resource Name (ARN) for the AppIntegration association. + The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ return pulumi.get(self, "integration_association_arn") @@ -3436,9 +3486,6 @@ def integration_association_arn(self, value: Optional[pulumi.Input[str]]): if not MYPY: class RuleUpdateCaseActionArgsDict(TypedDict): - """ - The definition for update case action. - """ fields: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgsDict']]] elif False: RuleUpdateCaseActionArgsDict: TypeAlias = Mapping[str, Any] @@ -3447,9 +3494,6 @@ class RuleUpdateCaseActionArgsDict(TypedDict): class RuleUpdateCaseActionArgs: def __init__(__self__, *, fields: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]]): - """ - The definition for update case action. - """ pulumi.set(__self__, "fields", fields) @property @@ -4325,11 +4369,11 @@ class UserIdentityInfoArgsDict(TypedDict): """ first_name: NotRequired[pulumi.Input[str]] """ - The first name. This is required if you are using Amazon Connect or SAML for identity management. + The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. """ last_name: NotRequired[pulumi.Input[str]] """ - The last name. This is required if you are using Amazon Connect or SAML for identity management. + The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. """ mobile: NotRequired[pulumi.Input[str]] """ @@ -4355,8 +4399,8 @@ def __init__(__self__, *, """ Contains information about the identity of a user. :param pulumi.Input[str] email: The email address. If you are using SAML for identity management and include this parameter, an error is returned. - :param pulumi.Input[str] first_name: The first name. This is required if you are using Amazon Connect or SAML for identity management. - :param pulumi.Input[str] last_name: The last name. This is required if you are using Amazon Connect or SAML for identity management. + :param pulumi.Input[str] first_name: The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. + :param pulumi.Input[str] last_name: The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. :param pulumi.Input[str] mobile: The user's mobile number. :param pulumi.Input[str] secondary_email: The user's secondary email address. If you provide a secondary email, the user receives email notifications -- other than password reset notifications -- to this email address instead of to their primary email address. @@ -4389,7 +4433,7 @@ def email(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="firstName") def first_name(self) -> Optional[pulumi.Input[str]]: """ - The first name. This is required if you are using Amazon Connect or SAML for identity management. + The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. """ return pulumi.get(self, "first_name") @@ -4401,7 +4445,7 @@ def first_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="lastName") def last_name(self) -> Optional[pulumi.Input[str]]: """ - The last name. This is required if you are using Amazon Connect or SAML for identity management. + The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. """ return pulumi.get(self, "last_name") diff --git a/sdk/python/pulumi_aws_native/connect/get_queue.py b/sdk/python/pulumi_aws_native/connect/get_queue.py index 8336084df6..ac37800feb 100644 --- a/sdk/python/pulumi_aws_native/connect/get_queue.py +++ b/sdk/python/pulumi_aws_native/connect/get_queue.py @@ -26,7 +26,7 @@ @pulumi.output_type class GetQueueResult: - def __init__(__self__, description=None, hours_of_operation_arn=None, instance_arn=None, max_contacts=None, name=None, outbound_caller_config=None, queue_arn=None, quick_connect_arns=None, status=None, tags=None, type=None): + def __init__(__self__, description=None, hours_of_operation_arn=None, instance_arn=None, max_contacts=None, name=None, outbound_caller_config=None, outbound_email_config=None, queue_arn=None, quick_connect_arns=None, status=None, tags=None, type=None): if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) @@ -45,6 +45,9 @@ def __init__(__self__, description=None, hours_of_operation_arn=None, instance_a if outbound_caller_config and not isinstance(outbound_caller_config, dict): raise TypeError("Expected argument 'outbound_caller_config' to be a dict") pulumi.set(__self__, "outbound_caller_config", outbound_caller_config) + if outbound_email_config and not isinstance(outbound_email_config, dict): + raise TypeError("Expected argument 'outbound_email_config' to be a dict") + pulumi.set(__self__, "outbound_email_config", outbound_email_config) if queue_arn and not isinstance(queue_arn, str): raise TypeError("Expected argument 'queue_arn' to be a str") pulumi.set(__self__, "queue_arn", queue_arn) @@ -109,6 +112,14 @@ def outbound_caller_config(self) -> Optional['outputs.QueueOutboundCallerConfig' """ return pulumi.get(self, "outbound_caller_config") + @property + @pulumi.getter(name="outboundEmailConfig") + def outbound_email_config(self) -> Optional['outputs.QueueOutboundEmailConfig']: + """ + The outbound email address ID. + """ + return pulumi.get(self, "outbound_email_config") + @property @pulumi.getter(name="queueArn") def queue_arn(self) -> Optional[str]: @@ -162,6 +173,7 @@ def __await__(self): max_contacts=self.max_contacts, name=self.name, outbound_caller_config=self.outbound_caller_config, + outbound_email_config=self.outbound_email_config, queue_arn=self.queue_arn, quick_connect_arns=self.quick_connect_arns, status=self.status, @@ -189,6 +201,7 @@ def get_queue(queue_arn: Optional[str] = None, max_contacts=pulumi.get(__ret__, 'max_contacts'), name=pulumi.get(__ret__, 'name'), outbound_caller_config=pulumi.get(__ret__, 'outbound_caller_config'), + outbound_email_config=pulumi.get(__ret__, 'outbound_email_config'), queue_arn=pulumi.get(__ret__, 'queue_arn'), quick_connect_arns=pulumi.get(__ret__, 'quick_connect_arns'), status=pulumi.get(__ret__, 'status'), @@ -213,6 +226,7 @@ def get_queue_output(queue_arn: Optional[pulumi.Input[str]] = None, max_contacts=pulumi.get(__response__, 'max_contacts'), name=pulumi.get(__response__, 'name'), outbound_caller_config=pulumi.get(__response__, 'outbound_caller_config'), + outbound_email_config=pulumi.get(__response__, 'outbound_email_config'), queue_arn=pulumi.get(__response__, 'queue_arn'), quick_connect_arns=pulumi.get(__response__, 'quick_connect_arns'), status=pulumi.get(__response__, 'status'), diff --git a/sdk/python/pulumi_aws_native/connect/get_rule.py b/sdk/python/pulumi_aws_native/connect/get_rule.py index b73ba26515..90a1a97c79 100644 --- a/sdk/python/pulumi_aws_native/connect/get_rule.py +++ b/sdk/python/pulumi_aws_native/connect/get_rule.py @@ -50,7 +50,7 @@ def __init__(__self__, actions=None, function=None, name=None, publish_status=No @pulumi.getter def actions(self) -> Optional['outputs.RuleActions']: """ - The list of actions that will be executed when a rule is triggered. + A list of actions to be run when the rule is triggered. """ return pulumi.get(self, "actions") @@ -58,7 +58,7 @@ def actions(self) -> Optional['outputs.RuleActions']: @pulumi.getter def function(self) -> Optional[str]: """ - The conditions of a rule. + The conditions of the rule. """ return pulumi.get(self, "function") @@ -74,7 +74,8 @@ def name(self) -> Optional[str]: @pulumi.getter(name="publishStatus") def publish_status(self) -> Optional['RulePublishStatus']: """ - The publish status of a rule, either draft or published. + The publish status of the rule. + *Allowed values*: ``DRAFT`` | ``PUBLISHED`` """ return pulumi.get(self, "publish_status") @@ -90,7 +91,7 @@ def rule_arn(self) -> Optional[str]: @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: """ - One or more tags. + The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. """ return pulumi.get(self, "tags") @@ -112,7 +113,7 @@ def __await__(self): def get_rule(rule_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRuleResult: """ - Resource Type definition for AWS:Connect::Rule + Creates a rule for the specified CON instance. :param str rule_arn: The Amazon Resource Name (ARN) of the rule. @@ -132,7 +133,7 @@ def get_rule(rule_arn: Optional[str] = None, def get_rule_output(rule_arn: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRuleResult]: """ - Resource Type definition for AWS:Connect::Rule + Creates a rule for the specified CON instance. :param str rule_arn: The Amazon Resource Name (ARN) of the rule. diff --git a/sdk/python/pulumi_aws_native/connect/outputs.py b/sdk/python/pulumi_aws_native/connect/outputs.py index 443879ba67..962f57b167 100644 --- a/sdk/python/pulumi_aws_native/connect/outputs.py +++ b/sdk/python/pulumi_aws_native/connect/outputs.py @@ -45,6 +45,7 @@ 'InstanceStorageConfigKinesisVideoStreamConfig', 'InstanceStorageConfigS3Config', 'QueueOutboundCallerConfig', + 'QueueOutboundEmailConfig', 'QuickConnectConfig', 'QuickConnectPhoneNumberQuickConnectConfig', 'QuickConnectQueueQuickConnectConfig', @@ -1169,6 +1170,9 @@ def __init__(__self__, *, override_description: Optional[str] = None): """ Overrides attached to the hours of operation. + :param str effective_from: The date from which the hours of operation override would be effective. + :param str effective_till: The date till which the hours of operation override would be effective. + :param str hours_of_operation_override_id: The identifier for the hours of operation override. """ pulumi.set(__self__, "effective_from", effective_from) pulumi.set(__self__, "effective_till", effective_till) @@ -1182,11 +1186,17 @@ def __init__(__self__, *, @property @pulumi.getter(name="effectiveFrom") def effective_from(self) -> str: + """ + The date from which the hours of operation override would be effective. + """ return pulumi.get(self, "effective_from") @property @pulumi.getter(name="effectiveTill") def effective_till(self) -> str: + """ + The date till which the hours of operation override would be effective. + """ return pulumi.get(self, "effective_till") @property @@ -1202,6 +1212,9 @@ def override_name(self) -> str: @property @pulumi.getter(name="hoursOfOperationOverrideId") def hours_of_operation_override_id(self) -> Optional[str]: + """ + The identifier for the hours of operation override. + """ return pulumi.get(self, "hours_of_operation_override_id") @property @@ -1750,6 +1763,46 @@ def outbound_flow_arn(self) -> Optional[str]: return pulumi.get(self, "outbound_flow_arn") +@pulumi.output_type +class QueueOutboundEmailConfig(dict): + """ + The outbound email address ID. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "outboundEmailAddressId": + suggest = "outbound_email_address_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in QueueOutboundEmailConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + QueueOutboundEmailConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + QueueOutboundEmailConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + outbound_email_address_id: Optional[str] = None): + """ + The outbound email address ID. + :param str outbound_email_address_id: The identifier of the email address. + """ + if outbound_email_address_id is not None: + pulumi.set(__self__, "outbound_email_address_id", outbound_email_address_id) + + @property + @pulumi.getter(name="outboundEmailAddressId") + def outbound_email_address_id(self) -> Optional[str]: + """ + The identifier of the email address. + """ + return pulumi.get(self, "outbound_email_address_id") + + @pulumi.output_type class QuickConnectConfig(dict): """ @@ -2201,7 +2254,7 @@ def queue_arn(self) -> str: @pulumi.output_type class RuleActions(dict): """ - The list of actions that will be executed when a rule is triggered. + A list of actions to be run when the rule is triggered. """ @staticmethod def __key_warning(key: str): @@ -2244,11 +2297,11 @@ def __init__(__self__, *, task_actions: Optional[Sequence['outputs.RuleTaskAction']] = None, update_case_actions: Optional[Sequence['outputs.RuleUpdateCaseAction']] = None): """ - The list of actions that will be executed when a rule is triggered. - :param Sequence['RuleAssignContactCategoryAction'] assign_contact_category_actions: Information about the contact category action. The syntax can be empty, for example, `{}` . - :param Sequence['RuleEventBridgeAction'] event_bridge_actions: Information about the EventBridge action. + A list of actions to be run when the rule is triggered. + :param Sequence['RuleAssignContactCategoryAction'] assign_contact_category_actions: Information about the contact category action. The syntax can be empty, for example, ``{}``. + :param Sequence['RuleEventBridgeAction'] event_bridge_actions: Information about the EV action. :param Sequence['RuleSendNotificationAction'] send_notification_actions: Information about the send notification action. - :param Sequence['RuleTaskAction'] task_actions: Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + :param Sequence['RuleTaskAction'] task_actions: Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ if assign_contact_category_actions is not None: pulumi.set(__self__, "assign_contact_category_actions", assign_contact_category_actions) @@ -2271,7 +2324,7 @@ def __init__(__self__, *, @pulumi.getter(name="assignContactCategoryActions") def assign_contact_category_actions(self) -> Optional[Sequence['outputs.RuleAssignContactCategoryAction']]: """ - Information about the contact category action. The syntax can be empty, for example, `{}` . + Information about the contact category action. The syntax can be empty, for example, ``{}``. """ return pulumi.get(self, "assign_contact_category_actions") @@ -2289,7 +2342,7 @@ def end_associated_tasks_actions(self) -> Optional[Sequence['outputs.RuleEndAsso @pulumi.getter(name="eventBridgeActions") def event_bridge_actions(self) -> Optional[Sequence['outputs.RuleEventBridgeAction']]: """ - Information about the EventBridge action. + Information about the EV action. """ return pulumi.get(self, "event_bridge_actions") @@ -2310,7 +2363,7 @@ def submit_auto_evaluation_actions(self) -> Optional[Sequence['outputs.RuleSubmi @pulumi.getter(name="taskActions") def task_actions(self) -> Optional[Sequence['outputs.RuleTaskAction']]: """ - Information about the task action. This field is required if `TriggerEventSource` is one of the following values: `OnZendeskTicketCreate` | `OnZendeskTicketStatusUpdate` | `OnSalesforceCaseCreate` + Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ return pulumi.get(self, "task_actions") @@ -2334,9 +2387,6 @@ def __init__(__self__): @pulumi.output_type class RuleCreateCaseAction(dict): - """ - The definition for create case action. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2357,10 +2407,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, fields: Sequence['outputs.RuleField'], template_id: str): - """ - The definition for create case action. - :param str template_id: The Id of template. - """ pulumi.set(__self__, "fields", fields) pulumi.set(__self__, "template_id", template_id) @@ -2372,9 +2418,6 @@ def fields(self) -> Sequence['outputs.RuleField']: @property @pulumi.getter(name="templateId") def template_id(self) -> str: - """ - The Id of template. - """ return pulumi.get(self, "template_id") @@ -2393,13 +2436,13 @@ def __init__(__self__): @pulumi.output_type class RuleEventBridgeAction(dict): """ - The definition for event bridge action. + The EV action definition. """ def __init__(__self__, *, name: str): """ - The definition for event bridge action. - :param str name: The name of the event bridge action. + The EV action definition. + :param str name: The name. """ pulumi.set(__self__, "name", name) @@ -2407,32 +2450,22 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - The name of the event bridge action. + The name. """ return pulumi.get(self, "name") @pulumi.output_type class RuleField(dict): - """ - The field of the case. - """ def __init__(__self__, *, id: str, value: 'outputs.RuleFieldValue'): - """ - The field of the case. - :param str id: The Id of the field - """ pulumi.set(__self__, "id", id) pulumi.set(__self__, "value", value) @property @pulumi.getter def id(self) -> str: - """ - The Id of the field - """ return pulumi.get(self, "id") @property @@ -2444,7 +2477,7 @@ def value(self) -> 'outputs.RuleFieldValue': @pulumi.output_type class RuleFieldValue(dict): """ - The value of the field. + Object for case field values. """ @staticmethod def __key_warning(key: str): @@ -2475,7 +2508,7 @@ def __init__(__self__, *, empty_value: Optional[Any] = None, string_value: Optional[str] = None): """ - The value of the field. + Object for case field values. """ if boolean_value is not None: pulumi.set(__self__, "boolean_value", boolean_value) @@ -2536,8 +2569,8 @@ def __init__(__self__, *, user_tags: Optional[Mapping[str, str]] = None): """ The type of notification recipient. - :param Sequence[str] user_arns: The list of recipients by user arns. - :param Mapping[str, str] user_tags: The collection of recipients who are identified by user tags + :param Sequence[str] user_arns: The Amazon Resource Name (ARN) of the user account. + :param Mapping[str, str] user_tags: The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. """ if user_arns is not None: pulumi.set(__self__, "user_arns", user_arns) @@ -2548,7 +2581,7 @@ def __init__(__self__, *, @pulumi.getter(name="userArns") def user_arns(self) -> Optional[Sequence[str]]: """ - The list of recipients by user arns. + The Amazon Resource Name (ARN) of the user account. """ return pulumi.get(self, "user_arns") @@ -2556,7 +2589,7 @@ def user_arns(self) -> Optional[Sequence[str]]: @pulumi.getter(name="userTags") def user_tags(self) -> Optional[Mapping[str, str]]: """ - The collection of recipients who are identified by user tags + The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified. """ return pulumi.get(self, "user_tags") @@ -2564,13 +2597,16 @@ def user_tags(self) -> Optional[Mapping[str, str]]: @pulumi.output_type class RuleReference(dict): """ - A contact reference. + Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) """ def __init__(__self__, *, type: 'RuleReferenceType', value: str): """ - A contact reference. + Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.) + :param 'RuleReferenceType' type: The type of the reference. ``DATE`` must be of type Epoch timestamp. + *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + :param str value: A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). """ pulumi.set(__self__, "type", type) pulumi.set(__self__, "value", value) @@ -2578,18 +2614,25 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> 'RuleReferenceType': + """ + The type of the reference. ``DATE`` must be of type Epoch timestamp. + *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL`` + """ return pulumi.get(self, "type") @property @pulumi.getter def value(self) -> str: + """ + A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP). + """ return pulumi.get(self, "value") @pulumi.output_type class RuleSendNotificationAction(dict): """ - The definition for sending notification action. + Information about the send notification action. """ @staticmethod def __key_warning(key: str): @@ -2617,11 +2660,14 @@ def __init__(__self__, *, recipient: 'outputs.RuleNotificationRecipientType', subject: Optional[str] = None): """ - The definition for sending notification action. - :param str content: The content of notification. - :param 'RuleSendNotificationActionContentType' content_type: The type of content. - :param 'RuleSendNotificationActionDeliveryMethod' delivery_method: The means of delivery. - :param str subject: The subject of notification. + Information about the send notification action. + :param str content: Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. + :param 'RuleSendNotificationActionContentType' content_type: Content type format. + *Allowed value*: ``PLAIN_TEXT`` + :param 'RuleSendNotificationActionDeliveryMethod' delivery_method: Notification delivery method. + *Allowed value*: ``EMAIL`` + :param 'RuleNotificationRecipientType' recipient: Notification recipient. + :param str subject: The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -2634,7 +2680,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> str: """ - The content of notification. + Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "content") @@ -2642,7 +2688,8 @@ def content(self) -> str: @pulumi.getter(name="contentType") def content_type(self) -> 'RuleSendNotificationActionContentType': """ - The type of content. + Content type format. + *Allowed value*: ``PLAIN_TEXT`` """ return pulumi.get(self, "content_type") @@ -2650,29 +2697,30 @@ def content_type(self) -> 'RuleSendNotificationActionContentType': @pulumi.getter(name="deliveryMethod") def delivery_method(self) -> 'RuleSendNotificationActionDeliveryMethod': """ - The means of delivery. + Notification delivery method. + *Allowed value*: ``EMAIL`` """ return pulumi.get(self, "delivery_method") @property @pulumi.getter def recipient(self) -> 'outputs.RuleNotificationRecipientType': + """ + Notification recipient. + """ return pulumi.get(self, "recipient") @property @pulumi.getter def subject(self) -> Optional[str]: """ - The subject of notification. + The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "subject") @pulumi.output_type class RuleSubmitAutoEvaluationAction(dict): - """ - The definition of submit auto evaluation action. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2692,25 +2740,18 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, evaluation_form_arn: str): - """ - The definition of submit auto evaluation action. - :param str evaluation_form_arn: The Amazon Resource Name (ARN) of the evaluation form. - """ pulumi.set(__self__, "evaluation_form_arn", evaluation_form_arn) @property @pulumi.getter(name="evaluationFormArn") def evaluation_form_arn(self) -> str: - """ - The Amazon Resource Name (ARN) of the evaluation form. - """ return pulumi.get(self, "evaluation_form_arn") @pulumi.output_type class RuleTaskAction(dict): """ - The definition of task action. + Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ @staticmethod def __key_warning(key: str): @@ -2735,11 +2776,11 @@ def __init__(__self__, *, description: Optional[str] = None, references: Optional[Mapping[str, 'outputs.RuleReference']] = None): """ - The definition of task action. - :param str contact_flow_arn: The Amazon Resource Name (ARN) of the contact flow. - :param str name: The name which appears in the agent's Contact Control Panel (CCP). - :param str description: The description which appears in the agent's Contact Control Panel (CCP). - :param Mapping[str, 'RuleReference'] references: A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` + :param str contact_flow_arn: The Amazon Resource Name (ARN) of the flow. + :param str name: The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. + :param str description: The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. + :param Mapping[str, 'RuleReference'] references: Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) """ pulumi.set(__self__, "contact_flow_arn", contact_flow_arn) pulumi.set(__self__, "name", name) @@ -2752,7 +2793,7 @@ def __init__(__self__, *, @pulumi.getter(name="contactFlowArn") def contact_flow_arn(self) -> str: """ - The Amazon Resource Name (ARN) of the contact flow. + The Amazon Resource Name (ARN) of the flow. """ return pulumi.get(self, "contact_flow_arn") @@ -2760,7 +2801,7 @@ def contact_flow_arn(self) -> str: @pulumi.getter def name(self) -> str: """ - The name which appears in the agent's Contact Control Panel (CCP). + The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "name") @@ -2768,7 +2809,7 @@ def name(self) -> str: @pulumi.getter def description(self) -> Optional[str]: """ - The description which appears in the agent's Contact Control Panel (CCP). + The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*. """ return pulumi.get(self, "description") @@ -2776,7 +2817,7 @@ def description(self) -> Optional[str]: @pulumi.getter def references(self) -> Optional[Mapping[str, 'outputs.RuleReference']]: """ - A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.) """ return pulumi.get(self, "references") @@ -2784,7 +2825,7 @@ def references(self) -> Optional[Mapping[str, 'outputs.RuleReference']]: @pulumi.output_type class RuleTriggerEventSource(dict): """ - The event source that will trigger the rule. + The name of the event source. """ @staticmethod def __key_warning(key: str): @@ -2809,9 +2850,9 @@ def __init__(__self__, *, event_source_name: 'RuleTriggerEventSourceEventSourceName', integration_association_arn: Optional[str] = None): """ - The event source that will trigger the rule. - :param 'RuleTriggerEventSourceEventSourceName' event_source_name: The name of event source. - :param str integration_association_arn: The Amazon Resource Name (ARN) for the AppIntegration association. + The name of the event source. + :param 'RuleTriggerEventSourceEventSourceName' event_source_name: The name of the event source. + :param str integration_association_arn: The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ pulumi.set(__self__, "event_source_name", event_source_name) if integration_association_arn is not None: @@ -2821,7 +2862,7 @@ def __init__(__self__, *, @pulumi.getter(name="eventSourceName") def event_source_name(self) -> 'RuleTriggerEventSourceEventSourceName': """ - The name of event source. + The name of the event source. """ return pulumi.get(self, "event_source_name") @@ -2829,21 +2870,15 @@ def event_source_name(self) -> 'RuleTriggerEventSourceEventSourceName': @pulumi.getter(name="integrationAssociationArn") def integration_association_arn(self) -> Optional[str]: """ - The Amazon Resource Name (ARN) for the AppIntegration association. + The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate`` """ return pulumi.get(self, "integration_association_arn") @pulumi.output_type class RuleUpdateCaseAction(dict): - """ - The definition for update case action. - """ def __init__(__self__, *, fields: Sequence['outputs.RuleField']): - """ - The definition for update case action. - """ pulumi.set(__self__, "fields", fields) @property @@ -3583,8 +3618,8 @@ def __init__(__self__, *, """ Contains information about the identity of a user. :param str email: The email address. If you are using SAML for identity management and include this parameter, an error is returned. - :param str first_name: The first name. This is required if you are using Amazon Connect or SAML for identity management. - :param str last_name: The last name. This is required if you are using Amazon Connect or SAML for identity management. + :param str first_name: The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. + :param str last_name: The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. :param str mobile: The user's mobile number. :param str secondary_email: The user's secondary email address. If you provide a secondary email, the user receives email notifications -- other than password reset notifications -- to this email address instead of to their primary email address. @@ -3613,7 +3648,7 @@ def email(self) -> Optional[str]: @pulumi.getter(name="firstName") def first_name(self) -> Optional[str]: """ - The first name. This is required if you are using Amazon Connect or SAML for identity management. + The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. """ return pulumi.get(self, "first_name") @@ -3621,7 +3656,7 @@ def first_name(self) -> Optional[str]: @pulumi.getter(name="lastName") def last_name(self) -> Optional[str]: """ - The last name. This is required if you are using Amazon Connect or SAML for identity management. + The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted. """ return pulumi.get(self, "last_name") diff --git a/sdk/python/pulumi_aws_native/connect/queue.py b/sdk/python/pulumi_aws_native/connect/queue.py index cf0beaf38e..365124ba20 100644 --- a/sdk/python/pulumi_aws_native/connect/queue.py +++ b/sdk/python/pulumi_aws_native/connect/queue.py @@ -30,6 +30,7 @@ def __init__(__self__, *, max_contacts: Optional[pulumi.Input[int]] = None, name: Optional[pulumi.Input[str]] = None, outbound_caller_config: Optional[pulumi.Input['QueueOutboundCallerConfigArgs']] = None, + outbound_email_config: Optional[pulumi.Input['QueueOutboundEmailConfigArgs']] = None, quick_connect_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input['QueueStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): @@ -41,6 +42,7 @@ def __init__(__self__, *, :param pulumi.Input[int] max_contacts: The maximum number of contacts that can be in the queue before it is considered full. :param pulumi.Input[str] name: The name of the queue. :param pulumi.Input['QueueOutboundCallerConfigArgs'] outbound_caller_config: The outbound caller ID name, number, and outbound whisper flow. + :param pulumi.Input['QueueOutboundEmailConfigArgs'] outbound_email_config: The outbound email address ID. :param pulumi.Input[Sequence[pulumi.Input[str]]] quick_connect_arns: The quick connects available to agents who are working the queue. :param pulumi.Input['QueueStatus'] status: The status of the queue. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: An array of key-value pairs to apply to this resource. @@ -55,6 +57,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if outbound_caller_config is not None: pulumi.set(__self__, "outbound_caller_config", outbound_caller_config) + if outbound_email_config is not None: + pulumi.set(__self__, "outbound_email_config", outbound_email_config) if quick_connect_arns is not None: pulumi.set(__self__, "quick_connect_arns", quick_connect_arns) if status is not None: @@ -134,6 +138,18 @@ def outbound_caller_config(self) -> Optional[pulumi.Input['QueueOutboundCallerCo def outbound_caller_config(self, value: Optional[pulumi.Input['QueueOutboundCallerConfigArgs']]): pulumi.set(self, "outbound_caller_config", value) + @property + @pulumi.getter(name="outboundEmailConfig") + def outbound_email_config(self) -> Optional[pulumi.Input['QueueOutboundEmailConfigArgs']]: + """ + The outbound email address ID. + """ + return pulumi.get(self, "outbound_email_config") + + @outbound_email_config.setter + def outbound_email_config(self, value: Optional[pulumi.Input['QueueOutboundEmailConfigArgs']]): + pulumi.set(self, "outbound_email_config", value) + @property @pulumi.getter(name="quickConnectArns") def quick_connect_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -182,6 +198,7 @@ def __init__(__self__, max_contacts: Optional[pulumi.Input[int]] = None, name: Optional[pulumi.Input[str]] = None, outbound_caller_config: Optional[pulumi.Input[Union['QueueOutboundCallerConfigArgs', 'QueueOutboundCallerConfigArgsDict']]] = None, + outbound_email_config: Optional[pulumi.Input[Union['QueueOutboundEmailConfigArgs', 'QueueOutboundEmailConfigArgsDict']]] = None, quick_connect_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input['QueueStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, @@ -197,6 +214,7 @@ def __init__(__self__, :param pulumi.Input[int] max_contacts: The maximum number of contacts that can be in the queue before it is considered full. :param pulumi.Input[str] name: The name of the queue. :param pulumi.Input[Union['QueueOutboundCallerConfigArgs', 'QueueOutboundCallerConfigArgsDict']] outbound_caller_config: The outbound caller ID name, number, and outbound whisper flow. + :param pulumi.Input[Union['QueueOutboundEmailConfigArgs', 'QueueOutboundEmailConfigArgsDict']] outbound_email_config: The outbound email address ID. :param pulumi.Input[Sequence[pulumi.Input[str]]] quick_connect_arns: The quick connects available to agents who are working the queue. :param pulumi.Input['QueueStatus'] status: The status of the queue. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: An array of key-value pairs to apply to this resource. @@ -231,6 +249,7 @@ def _internal_init(__self__, max_contacts: Optional[pulumi.Input[int]] = None, name: Optional[pulumi.Input[str]] = None, outbound_caller_config: Optional[pulumi.Input[Union['QueueOutboundCallerConfigArgs', 'QueueOutboundCallerConfigArgsDict']]] = None, + outbound_email_config: Optional[pulumi.Input[Union['QueueOutboundEmailConfigArgs', 'QueueOutboundEmailConfigArgsDict']]] = None, quick_connect_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input['QueueStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, @@ -253,6 +272,7 @@ def _internal_init(__self__, __props__.__dict__["max_contacts"] = max_contacts __props__.__dict__["name"] = name __props__.__dict__["outbound_caller_config"] = outbound_caller_config + __props__.__dict__["outbound_email_config"] = outbound_email_config __props__.__dict__["quick_connect_arns"] = quick_connect_arns __props__.__dict__["status"] = status __props__.__dict__["tags"] = tags @@ -286,6 +306,7 @@ def get(resource_name: str, __props__.__dict__["max_contacts"] = None __props__.__dict__["name"] = None __props__.__dict__["outbound_caller_config"] = None + __props__.__dict__["outbound_email_config"] = None __props__.__dict__["queue_arn"] = None __props__.__dict__["quick_connect_arns"] = None __props__.__dict__["status"] = None @@ -341,6 +362,14 @@ def outbound_caller_config(self) -> pulumi.Output[Optional['outputs.QueueOutboun """ return pulumi.get(self, "outbound_caller_config") + @property + @pulumi.getter(name="outboundEmailConfig") + def outbound_email_config(self) -> pulumi.Output[Optional['outputs.QueueOutboundEmailConfig']]: + """ + The outbound email address ID. + """ + return pulumi.get(self, "outbound_email_config") + @property @pulumi.getter(name="queueArn") def queue_arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/connect/rule.py b/sdk/python/pulumi_aws_native/connect/rule.py index 7bdddb94f2..4b1f36df7c 100644 --- a/sdk/python/pulumi_aws_native/connect/rule.py +++ b/sdk/python/pulumi_aws_native/connect/rule.py @@ -33,13 +33,14 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a Rule resource. - :param pulumi.Input['RuleActionsArgs'] actions: The list of actions that will be executed when a rule is triggered. - :param pulumi.Input[str] function: The conditions of a rule. + :param pulumi.Input['RuleActionsArgs'] actions: A list of actions to be run when the rule is triggered. + :param pulumi.Input[str] function: The conditions of the rule. :param pulumi.Input[str] instance_arn: The Amazon Resource Name (ARN) of the instance. - :param pulumi.Input['RulePublishStatus'] publish_status: The publish status of a rule, either draft or published. - :param pulumi.Input['RuleTriggerEventSourceArgs'] trigger_event_source: The event source that triggers the rule. + :param pulumi.Input['RulePublishStatus'] publish_status: The publish status of the rule. + *Allowed values*: ``DRAFT`` | ``PUBLISHED`` + :param pulumi.Input['RuleTriggerEventSourceArgs'] trigger_event_source: The event source to trigger the rule. :param pulumi.Input[str] name: The name of the rule. - :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: One or more tags. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. """ pulumi.set(__self__, "actions", actions) pulumi.set(__self__, "function", function) @@ -55,7 +56,7 @@ def __init__(__self__, *, @pulumi.getter def actions(self) -> pulumi.Input['RuleActionsArgs']: """ - The list of actions that will be executed when a rule is triggered. + A list of actions to be run when the rule is triggered. """ return pulumi.get(self, "actions") @@ -67,7 +68,7 @@ def actions(self, value: pulumi.Input['RuleActionsArgs']): @pulumi.getter def function(self) -> pulumi.Input[str]: """ - The conditions of a rule. + The conditions of the rule. """ return pulumi.get(self, "function") @@ -91,7 +92,8 @@ def instance_arn(self, value: pulumi.Input[str]): @pulumi.getter(name="publishStatus") def publish_status(self) -> pulumi.Input['RulePublishStatus']: """ - The publish status of a rule, either draft or published. + The publish status of the rule. + *Allowed values*: ``DRAFT`` | ``PUBLISHED`` """ return pulumi.get(self, "publish_status") @@ -103,7 +105,7 @@ def publish_status(self, value: pulumi.Input['RulePublishStatus']): @pulumi.getter(name="triggerEventSource") def trigger_event_source(self) -> pulumi.Input['RuleTriggerEventSourceArgs']: """ - The event source that triggers the rule. + The event source to trigger the rule. """ return pulumi.get(self, "trigger_event_source") @@ -127,7 +129,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: """ - One or more tags. + The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. """ return pulumi.get(self, "tags") @@ -150,17 +152,18 @@ def __init__(__self__, trigger_event_source: Optional[pulumi.Input[Union['RuleTriggerEventSourceArgs', 'RuleTriggerEventSourceArgsDict']]] = None, __props__=None): """ - Resource Type definition for AWS:Connect::Rule + Creates a rule for the specified CON instance. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Union['RuleActionsArgs', 'RuleActionsArgsDict']] actions: The list of actions that will be executed when a rule is triggered. - :param pulumi.Input[str] function: The conditions of a rule. + :param pulumi.Input[Union['RuleActionsArgs', 'RuleActionsArgsDict']] actions: A list of actions to be run when the rule is triggered. + :param pulumi.Input[str] function: The conditions of the rule. :param pulumi.Input[str] instance_arn: The Amazon Resource Name (ARN) of the instance. :param pulumi.Input[str] name: The name of the rule. - :param pulumi.Input['RulePublishStatus'] publish_status: The publish status of a rule, either draft or published. - :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: One or more tags. - :param pulumi.Input[Union['RuleTriggerEventSourceArgs', 'RuleTriggerEventSourceArgsDict']] trigger_event_source: The event source that triggers the rule. + :param pulumi.Input['RulePublishStatus'] publish_status: The publish status of the rule. + *Allowed values*: ``DRAFT`` | ``PUBLISHED`` + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. + :param pulumi.Input[Union['RuleTriggerEventSourceArgs', 'RuleTriggerEventSourceArgsDict']] trigger_event_source: The event source to trigger the rule. """ ... @overload @@ -169,7 +172,7 @@ def __init__(__self__, args: RuleArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS:Connect::Rule + Creates a rule for the specified CON instance. :param str resource_name: The name of the resource. :param RuleArgs args: The arguments to use to populate this resource's properties. @@ -258,7 +261,7 @@ def get(resource_name: str, @pulumi.getter def actions(self) -> pulumi.Output['outputs.RuleActions']: """ - The list of actions that will be executed when a rule is triggered. + A list of actions to be run when the rule is triggered. """ return pulumi.get(self, "actions") @@ -266,7 +269,7 @@ def actions(self) -> pulumi.Output['outputs.RuleActions']: @pulumi.getter def function(self) -> pulumi.Output[str]: """ - The conditions of a rule. + The conditions of the rule. """ return pulumi.get(self, "function") @@ -290,7 +293,8 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter(name="publishStatus") def publish_status(self) -> pulumi.Output['RulePublishStatus']: """ - The publish status of a rule, either draft or published. + The publish status of the rule. + *Allowed values*: ``DRAFT`` | ``PUBLISHED`` """ return pulumi.get(self, "publish_status") @@ -306,7 +310,7 @@ def rule_arn(self) -> pulumi.Output[str]: @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: """ - One or more tags. + The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. """ return pulumi.get(self, "tags") @@ -314,7 +318,7 @@ def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: @pulumi.getter(name="triggerEventSource") def trigger_event_source(self) -> pulumi.Output['outputs.RuleTriggerEventSource']: """ - The event source that triggers the rule. + The event source to trigger the rule. """ return pulumi.get(self, "trigger_event_source") diff --git a/sdk/python/pulumi_aws_native/connectcampaignsv2/_inputs.py b/sdk/python/pulumi_aws_native/connectcampaignsv2/_inputs.py index 86d2b45e60..4d61fe784b 100644 --- a/sdk/python/pulumi_aws_native/connectcampaignsv2/_inputs.py +++ b/sdk/python/pulumi_aws_native/connectcampaignsv2/_inputs.py @@ -38,6 +38,8 @@ 'CampaignEmailOutboundConfigArgsDict', 'CampaignEmailOutboundModeArgs', 'CampaignEmailOutboundModeArgsDict', + 'CampaignEventTriggerArgs', + 'CampaignEventTriggerArgsDict', 'CampaignLocalTimeZoneConfigArgs', 'CampaignLocalTimeZoneConfigArgsDict', 'CampaignOpenHoursArgs', @@ -668,6 +670,42 @@ def agentless_config(self, value: Optional[pulumi.Input['CampaignAgentlessConfig pulumi.set(self, "agentless_config", value) +if not MYPY: + class CampaignEventTriggerArgsDict(TypedDict): + """ + The event trigger of the campaign + """ + customer_profiles_domain_arn: NotRequired[pulumi.Input[str]] + """ + The Amazon Resource Name (ARN) of the Customer Profiles domain. + """ +elif False: + CampaignEventTriggerArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class CampaignEventTriggerArgs: + def __init__(__self__, *, + customer_profiles_domain_arn: Optional[pulumi.Input[str]] = None): + """ + The event trigger of the campaign + :param pulumi.Input[str] customer_profiles_domain_arn: The Amazon Resource Name (ARN) of the Customer Profiles domain. + """ + if customer_profiles_domain_arn is not None: + pulumi.set(__self__, "customer_profiles_domain_arn", customer_profiles_domain_arn) + + @property + @pulumi.getter(name="customerProfilesDomainArn") + def customer_profiles_domain_arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) of the Customer Profiles domain. + """ + return pulumi.get(self, "customer_profiles_domain_arn") + + @customer_profiles_domain_arn.setter + def customer_profiles_domain_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "customer_profiles_domain_arn", value) + + if not MYPY: class CampaignLocalTimeZoneConfigArgsDict(TypedDict): """ @@ -1166,25 +1204,33 @@ def agentless_config(self, value: Optional[pulumi.Input['CampaignAgentlessConfig if not MYPY: class CampaignSourceArgsDict(TypedDict): """ - The possible types of channel config parameters + The possible source of the campaign """ customer_profiles_segment_arn: NotRequired[pulumi.Input[str]] """ The Amazon Resource Name (ARN) of the Customer Profiles segment. """ + event_trigger: NotRequired[pulumi.Input['CampaignEventTriggerArgsDict']] + """ + The event trigger of the campaign. + """ elif False: CampaignSourceArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class CampaignSourceArgs: def __init__(__self__, *, - customer_profiles_segment_arn: Optional[pulumi.Input[str]] = None): + customer_profiles_segment_arn: Optional[pulumi.Input[str]] = None, + event_trigger: Optional[pulumi.Input['CampaignEventTriggerArgs']] = None): """ - The possible types of channel config parameters + The possible source of the campaign :param pulumi.Input[str] customer_profiles_segment_arn: The Amazon Resource Name (ARN) of the Customer Profiles segment. + :param pulumi.Input['CampaignEventTriggerArgs'] event_trigger: The event trigger of the campaign. """ if customer_profiles_segment_arn is not None: pulumi.set(__self__, "customer_profiles_segment_arn", customer_profiles_segment_arn) + if event_trigger is not None: + pulumi.set(__self__, "event_trigger", event_trigger) @property @pulumi.getter(name="customerProfilesSegmentArn") @@ -1198,6 +1244,18 @@ def customer_profiles_segment_arn(self) -> Optional[pulumi.Input[str]]: def customer_profiles_segment_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "customer_profiles_segment_arn", value) + @property + @pulumi.getter(name="eventTrigger") + def event_trigger(self) -> Optional[pulumi.Input['CampaignEventTriggerArgs']]: + """ + The event trigger of the campaign. + """ + return pulumi.get(self, "event_trigger") + + @event_trigger.setter + def event_trigger(self, value: Optional[pulumi.Input['CampaignEventTriggerArgs']]): + pulumi.set(self, "event_trigger", value) + if not MYPY: class CampaignTelephonyChannelSubtypeConfigArgsDict(TypedDict): diff --git a/sdk/python/pulumi_aws_native/connectcampaignsv2/outputs.py b/sdk/python/pulumi_aws_native/connectcampaignsv2/outputs.py index 60083ec8dc..2532f959a1 100644 --- a/sdk/python/pulumi_aws_native/connectcampaignsv2/outputs.py +++ b/sdk/python/pulumi_aws_native/connectcampaignsv2/outputs.py @@ -28,6 +28,7 @@ 'CampaignEmailChannelSubtypeConfig', 'CampaignEmailOutboundConfig', 'CampaignEmailOutboundMode', + 'CampaignEventTrigger', 'CampaignLocalTimeZoneConfig', 'CampaignOpenHours', 'CampaignPredictiveConfig', @@ -559,6 +560,46 @@ def agentless_config(self) -> Optional['outputs.CampaignAgentlessConfig']: return pulumi.get(self, "agentless_config") +@pulumi.output_type +class CampaignEventTrigger(dict): + """ + The event trigger of the campaign + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "customerProfilesDomainArn": + suggest = "customer_profiles_domain_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in CampaignEventTrigger. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + CampaignEventTrigger.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + CampaignEventTrigger.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + customer_profiles_domain_arn: Optional[str] = None): + """ + The event trigger of the campaign + :param str customer_profiles_domain_arn: The Amazon Resource Name (ARN) of the Customer Profiles domain. + """ + if customer_profiles_domain_arn is not None: + pulumi.set(__self__, "customer_profiles_domain_arn", customer_profiles_domain_arn) + + @property + @pulumi.getter(name="customerProfilesDomainArn") + def customer_profiles_domain_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the Customer Profiles domain. + """ + return pulumi.get(self, "customer_profiles_domain_arn") + + @pulumi.output_type class CampaignLocalTimeZoneConfig(dict): """ @@ -1051,13 +1092,15 @@ def agentless_config(self) -> Optional['outputs.CampaignAgentlessConfig']: @pulumi.output_type class CampaignSource(dict): """ - The possible types of channel config parameters + The possible source of the campaign """ @staticmethod def __key_warning(key: str): suggest = None if key == "customerProfilesSegmentArn": suggest = "customer_profiles_segment_arn" + elif key == "eventTrigger": + suggest = "event_trigger" if suggest: pulumi.log.warn(f"Key '{key}' not found in CampaignSource. Access the value via the '{suggest}' property getter instead.") @@ -1071,13 +1114,17 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - customer_profiles_segment_arn: Optional[str] = None): + customer_profiles_segment_arn: Optional[str] = None, + event_trigger: Optional['outputs.CampaignEventTrigger'] = None): """ - The possible types of channel config parameters + The possible source of the campaign :param str customer_profiles_segment_arn: The Amazon Resource Name (ARN) of the Customer Profiles segment. + :param 'CampaignEventTrigger' event_trigger: The event trigger of the campaign. """ if customer_profiles_segment_arn is not None: pulumi.set(__self__, "customer_profiles_segment_arn", customer_profiles_segment_arn) + if event_trigger is not None: + pulumi.set(__self__, "event_trigger", event_trigger) @property @pulumi.getter(name="customerProfilesSegmentArn") @@ -1087,6 +1134,14 @@ def customer_profiles_segment_arn(self) -> Optional[str]: """ return pulumi.get(self, "customer_profiles_segment_arn") + @property + @pulumi.getter(name="eventTrigger") + def event_trigger(self) -> Optional['outputs.CampaignEventTrigger']: + """ + The event trigger of the campaign. + """ + return pulumi.get(self, "event_trigger") + @pulumi.output_type class CampaignTelephonyChannelSubtypeConfig(dict): diff --git a/sdk/python/pulumi_aws_native/ec2/_enums.py b/sdk/python/pulumi_aws_native/ec2/_enums.py index cb7386c0cb..1a7a37646b 100644 --- a/sdk/python/pulumi_aws_native/ec2/_enums.py +++ b/sdk/python/pulumi_aws_native/ec2/_enums.py @@ -68,6 +68,9 @@ 'SpotFleetTagSpecificationResourceType', 'VpcBlockPublicAccessExclusionInternetGatewayExclusionMode', 'VpcBlockPublicAccessOptionsInternetGatewayBlockMode', + 'VpcEndpointDnsOptionsSpecificationDnsRecordIpType', + 'VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint', + 'VpcEndpointIpAddressType', 'VpcEndpointType', 'VpnConnectionCloudwatchLogOptionsSpecificationLogOutputFormat', 'VpnConnectionIkeVersionsRequestListValueValue', @@ -785,6 +788,27 @@ class VpcBlockPublicAccessOptionsInternetGatewayBlockMode(str, Enum): BLOCK_INGRESS = "block-ingress" +class VpcEndpointDnsOptionsSpecificationDnsRecordIpType(str, Enum): + IPV4 = "ipv4" + IPV6 = "ipv6" + DUALSTACK = "dualstack" + SERVICE_DEFINED = "service-defined" + NOT_SPECIFIED = "not-specified" + + +class VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint(str, Enum): + ONLY_INBOUND_RESOLVER = "OnlyInboundResolver" + ALL_RESOLVERS = "AllResolvers" + NOT_SPECIFIED = "NotSpecified" + + +class VpcEndpointIpAddressType(str, Enum): + IPV4 = "ipv4" + IPV6 = "ipv6" + DUALSTACK = "dualstack" + NOT_SPECIFIED = "not-specified" + + class VpcEndpointType(str, Enum): """ The type of endpoint. @@ -793,6 +817,8 @@ class VpcEndpointType(str, Enum): INTERFACE = "Interface" GATEWAY = "Gateway" GATEWAY_LOAD_BALANCER = "GatewayLoadBalancer" + SERVICE_NETWORK = "ServiceNetwork" + RESOURCE = "Resource" class VpnConnectionCloudwatchLogOptionsSpecificationLogOutputFormat(str, Enum): diff --git a/sdk/python/pulumi_aws_native/ec2/_inputs.py b/sdk/python/pulumi_aws_native/ec2/_inputs.py index 1c65caf8d9..c6894b3c79 100644 --- a/sdk/python/pulumi_aws_native/ec2/_inputs.py +++ b/sdk/python/pulumi_aws_native/ec2/_inputs.py @@ -334,6 +334,8 @@ 'VerifiedAccessTrustProviderDeviceOptionsArgsDict', 'VerifiedAccessTrustProviderOidcOptionsArgs', 'VerifiedAccessTrustProviderOidcOptionsArgsDict', + 'VpcEndpointDnsOptionsSpecificationArgs', + 'VpcEndpointDnsOptionsSpecificationArgsDict', 'VpnConnectionCloudwatchLogOptionsSpecificationArgs', 'VpnConnectionCloudwatchLogOptionsSpecificationArgsDict', 'VpnConnectionIkeVersionsRequestListValueArgs', @@ -5574,6 +5576,9 @@ def threads_per_core(self, value: Optional[pulumi.Input[int]]): if not MYPY: class LaunchTemplateCpuArgsDict(TypedDict): references: NotRequired[pulumi.Input[Sequence[pulumi.Input['LaunchTemplateReferenceArgsDict']]]] + """ + The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + """ elif False: LaunchTemplateCpuArgsDict: TypeAlias = Mapping[str, Any] @@ -5581,12 +5586,18 @@ class LaunchTemplateCpuArgsDict(TypedDict): class LaunchTemplateCpuArgs: def __init__(__self__, *, references: Optional[pulumi.Input[Sequence[pulumi.Input['LaunchTemplateReferenceArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['LaunchTemplateReferenceArgs']]] references: The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + """ if references is not None: pulumi.set(__self__, "references", references) @property @pulumi.getter def references(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['LaunchTemplateReferenceArgs']]]]: + """ + The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + """ return pulumi.get(self, "references") @references.setter @@ -5761,6 +5772,7 @@ class LaunchTemplateDataArgsDict(TypedDict): """ The network interfaces for the instance. """ + network_performance_options: NotRequired[Any] placement: NotRequired[pulumi.Input['LaunchTemplatePlacementArgsDict']] """ The placement for the instance. @@ -5825,6 +5837,7 @@ def __init__(__self__, *, metadata_options: Optional[pulumi.Input['LaunchTemplateMetadataOptionsArgs']] = None, monitoring: Optional[pulumi.Input['LaunchTemplateMonitoringArgs']] = None, network_interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['LaunchTemplateNetworkInterfaceArgs']]]] = None, + network_performance_options: Optional[Any] = None, placement: Optional[pulumi.Input['LaunchTemplatePlacementArgs']] = None, private_dns_name_options: Optional[pulumi.Input['LaunchTemplatePrivateDnsNameOptionsArgs']] = None, ram_disk_id: Optional[pulumi.Input[str]] = None, @@ -5945,6 +5958,8 @@ def __init__(__self__, *, pulumi.set(__self__, "monitoring", monitoring) if network_interfaces is not None: pulumi.set(__self__, "network_interfaces", network_interfaces) + if network_performance_options is not None: + pulumi.set(__self__, "network_performance_options", network_performance_options) if placement is not None: pulumi.set(__self__, "placement", placement) if private_dns_name_options is not None: @@ -6272,6 +6287,15 @@ def network_interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['Lau def network_interfaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['LaunchTemplateNetworkInterfaceArgs']]]]): pulumi.set(self, "network_interfaces", value) + @property + @pulumi.getter(name="networkPerformanceOptions") + def network_performance_options(self) -> Optional[Any]: + return pulumi.get(self, "network_performance_options") + + @network_performance_options.setter + def network_performance_options(self, value: Optional[Any]): + pulumi.set(self, "network_performance_options", value) + @property @pulumi.getter def placement(self) -> Optional[pulumi.Input['LaunchTemplatePlacementArgs']]: @@ -15997,6 +16021,42 @@ def user_info_endpoint(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "user_info_endpoint", value) +if not MYPY: + class VpcEndpointDnsOptionsSpecificationArgsDict(TypedDict): + dns_record_ip_type: NotRequired[pulumi.Input['VpcEndpointDnsOptionsSpecificationDnsRecordIpType']] + private_dns_only_for_inbound_resolver_endpoint: NotRequired[pulumi.Input['VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint']] +elif False: + VpcEndpointDnsOptionsSpecificationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class VpcEndpointDnsOptionsSpecificationArgs: + def __init__(__self__, *, + dns_record_ip_type: Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationDnsRecordIpType']] = None, + private_dns_only_for_inbound_resolver_endpoint: Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint']] = None): + if dns_record_ip_type is not None: + pulumi.set(__self__, "dns_record_ip_type", dns_record_ip_type) + if private_dns_only_for_inbound_resolver_endpoint is not None: + pulumi.set(__self__, "private_dns_only_for_inbound_resolver_endpoint", private_dns_only_for_inbound_resolver_endpoint) + + @property + @pulumi.getter(name="dnsRecordIpType") + def dns_record_ip_type(self) -> Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationDnsRecordIpType']]: + return pulumi.get(self, "dns_record_ip_type") + + @dns_record_ip_type.setter + def dns_record_ip_type(self, value: Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationDnsRecordIpType']]): + pulumi.set(self, "dns_record_ip_type", value) + + @property + @pulumi.getter(name="privateDnsOnlyForInboundResolverEndpoint") + def private_dns_only_for_inbound_resolver_endpoint(self) -> Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint']]: + return pulumi.get(self, "private_dns_only_for_inbound_resolver_endpoint") + + @private_dns_only_for_inbound_resolver_endpoint.setter + def private_dns_only_for_inbound_resolver_endpoint(self, value: Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint']]): + pulumi.set(self, "private_dns_only_for_inbound_resolver_endpoint", value) + + if not MYPY: class VpnConnectionCloudwatchLogOptionsSpecificationArgsDict(TypedDict): """ diff --git a/sdk/python/pulumi_aws_native/ec2/get_vpc_endpoint.py b/sdk/python/pulumi_aws_native/ec2/get_vpc_endpoint.py index fc7fbfe443..3589116356 100644 --- a/sdk/python/pulumi_aws_native/ec2/get_vpc_endpoint.py +++ b/sdk/python/pulumi_aws_native/ec2/get_vpc_endpoint.py @@ -13,6 +13,8 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +from . import outputs +from ._enums import * __all__ = [ 'GetVpcEndpointResult', @@ -23,16 +25,22 @@ @pulumi.output_type class GetVpcEndpointResult: - def __init__(__self__, creation_timestamp=None, dns_entries=None, id=None, network_interface_ids=None, policy_document=None, private_dns_enabled=None, route_table_ids=None, security_group_ids=None, subnet_ids=None): + def __init__(__self__, creation_timestamp=None, dns_entries=None, dns_options=None, id=None, ip_address_type=None, network_interface_ids=None, policy_document=None, private_dns_enabled=None, route_table_ids=None, security_group_ids=None, subnet_ids=None): if creation_timestamp and not isinstance(creation_timestamp, str): raise TypeError("Expected argument 'creation_timestamp' to be a str") pulumi.set(__self__, "creation_timestamp", creation_timestamp) if dns_entries and not isinstance(dns_entries, list): raise TypeError("Expected argument 'dns_entries' to be a list") pulumi.set(__self__, "dns_entries", dns_entries) + if dns_options and not isinstance(dns_options, dict): + raise TypeError("Expected argument 'dns_options' to be a dict") + pulumi.set(__self__, "dns_options", dns_options) if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) + if ip_address_type and not isinstance(ip_address_type, str): + raise TypeError("Expected argument 'ip_address_type' to be a str") + pulumi.set(__self__, "ip_address_type", ip_address_type) if network_interface_ids and not isinstance(network_interface_ids, list): raise TypeError("Expected argument 'network_interface_ids' to be a list") pulumi.set(__self__, "network_interface_ids", network_interface_ids) @@ -74,6 +82,11 @@ def dns_entries(self) -> Optional[Sequence[str]]: """ return pulumi.get(self, "dns_entries") + @property + @pulumi.getter(name="dnsOptions") + def dns_options(self) -> Optional['outputs.VpcEndpointDnsOptionsSpecification']: + return pulumi.get(self, "dns_options") + @property @pulumi.getter def id(self) -> Optional[str]: @@ -82,6 +95,11 @@ def id(self) -> Optional[str]: """ return pulumi.get(self, "id") + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> Optional['VpcEndpointIpAddressType']: + return pulumi.get(self, "ip_address_type") + @property @pulumi.getter(name="networkInterfaceIds") def network_interface_ids(self) -> Optional[Sequence[str]]: @@ -146,7 +164,9 @@ def __await__(self): return GetVpcEndpointResult( creation_timestamp=self.creation_timestamp, dns_entries=self.dns_entries, + dns_options=self.dns_options, id=self.id, + ip_address_type=self.ip_address_type, network_interface_ids=self.network_interface_ids, policy_document=self.policy_document, private_dns_enabled=self.private_dns_enabled, @@ -177,7 +197,9 @@ def get_vpc_endpoint(id: Optional[str] = None, return AwaitableGetVpcEndpointResult( creation_timestamp=pulumi.get(__ret__, 'creation_timestamp'), dns_entries=pulumi.get(__ret__, 'dns_entries'), + dns_options=pulumi.get(__ret__, 'dns_options'), id=pulumi.get(__ret__, 'id'), + ip_address_type=pulumi.get(__ret__, 'ip_address_type'), network_interface_ids=pulumi.get(__ret__, 'network_interface_ids'), policy_document=pulumi.get(__ret__, 'policy_document'), private_dns_enabled=pulumi.get(__ret__, 'private_dns_enabled'), @@ -205,7 +227,9 @@ def get_vpc_endpoint_output(id: Optional[pulumi.Input[str]] = None, return __ret__.apply(lambda __response__: GetVpcEndpointResult( creation_timestamp=pulumi.get(__response__, 'creation_timestamp'), dns_entries=pulumi.get(__response__, 'dns_entries'), + dns_options=pulumi.get(__response__, 'dns_options'), id=pulumi.get(__response__, 'id'), + ip_address_type=pulumi.get(__response__, 'ip_address_type'), network_interface_ids=pulumi.get(__response__, 'network_interface_ids'), policy_document=pulumi.get(__response__, 'policy_document'), private_dns_enabled=pulumi.get(__response__, 'private_dns_enabled'), diff --git a/sdk/python/pulumi_aws_native/ec2/outputs.py b/sdk/python/pulumi_aws_native/ec2/outputs.py index 5126394b80..0deee8ead8 100644 --- a/sdk/python/pulumi_aws_native/ec2/outputs.py +++ b/sdk/python/pulumi_aws_native/ec2/outputs.py @@ -191,6 +191,7 @@ 'VerifiedAccessInstanceVerifiedAccessTrustProvider', 'VerifiedAccessTrustProviderDeviceOptions', 'VerifiedAccessTrustProviderOidcOptions', + 'VpcEndpointDnsOptionsSpecification', 'VpnConnectionCloudwatchLogOptionsSpecification', 'VpnConnectionIkeVersionsRequestListValue', 'VpnConnectionPhase1EncryptionAlgorithmsRequestListValue', @@ -4148,12 +4149,18 @@ def udp_timeout(self) -> Optional[int]: class LaunchTemplateCpu(dict): def __init__(__self__, *, references: Optional[Sequence['outputs.LaunchTemplateReference']] = None): + """ + :param Sequence['LaunchTemplateReference'] references: The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + """ if references is not None: pulumi.set(__self__, "references", references) @property @pulumi.getter def references(self) -> Optional[Sequence['outputs.LaunchTemplateReference']]: + """ + The instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes are compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. + """ return pulumi.get(self, "references") @@ -4326,6 +4333,8 @@ def __key_warning(key: str): suggest = "metadata_options" elif key == "networkInterfaces": suggest = "network_interfaces" + elif key == "networkPerformanceOptions": + suggest = "network_performance_options" elif key == "privateDnsNameOptions": suggest = "private_dns_name_options" elif key == "ramDiskId": @@ -4375,6 +4384,7 @@ def __init__(__self__, *, metadata_options: Optional['outputs.LaunchTemplateMetadataOptions'] = None, monitoring: Optional['outputs.LaunchTemplateMonitoring'] = None, network_interfaces: Optional[Sequence['outputs.LaunchTemplateNetworkInterface']] = None, + network_performance_options: Optional[Any] = None, placement: Optional['outputs.LaunchTemplatePlacement'] = None, private_dns_name_options: Optional['outputs.LaunchTemplatePrivateDnsNameOptions'] = None, ram_disk_id: Optional[str] = None, @@ -4495,6 +4505,8 @@ def __init__(__self__, *, pulumi.set(__self__, "monitoring", monitoring) if network_interfaces is not None: pulumi.set(__self__, "network_interfaces", network_interfaces) + if network_performance_options is not None: + pulumi.set(__self__, "network_performance_options", network_performance_options) if placement is not None: pulumi.set(__self__, "placement", placement) if private_dns_name_options is not None: @@ -4726,6 +4738,11 @@ def network_interfaces(self) -> Optional[Sequence['outputs.LaunchTemplateNetwork """ return pulumi.get(self, "network_interfaces") + @property + @pulumi.getter(name="networkPerformanceOptions") + def network_performance_options(self) -> Optional[Any]: + return pulumi.get(self, "network_performance_options") + @property @pulumi.getter def placement(self) -> Optional['outputs.LaunchTemplatePlacement']: @@ -14198,6 +14215,46 @@ def user_info_endpoint(self) -> Optional[str]: return pulumi.get(self, "user_info_endpoint") +@pulumi.output_type +class VpcEndpointDnsOptionsSpecification(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dnsRecordIpType": + suggest = "dns_record_ip_type" + elif key == "privateDnsOnlyForInboundResolverEndpoint": + suggest = "private_dns_only_for_inbound_resolver_endpoint" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in VpcEndpointDnsOptionsSpecification. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + VpcEndpointDnsOptionsSpecification.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + VpcEndpointDnsOptionsSpecification.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + dns_record_ip_type: Optional['VpcEndpointDnsOptionsSpecificationDnsRecordIpType'] = None, + private_dns_only_for_inbound_resolver_endpoint: Optional['VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint'] = None): + if dns_record_ip_type is not None: + pulumi.set(__self__, "dns_record_ip_type", dns_record_ip_type) + if private_dns_only_for_inbound_resolver_endpoint is not None: + pulumi.set(__self__, "private_dns_only_for_inbound_resolver_endpoint", private_dns_only_for_inbound_resolver_endpoint) + + @property + @pulumi.getter(name="dnsRecordIpType") + def dns_record_ip_type(self) -> Optional['VpcEndpointDnsOptionsSpecificationDnsRecordIpType']: + return pulumi.get(self, "dns_record_ip_type") + + @property + @pulumi.getter(name="privateDnsOnlyForInboundResolverEndpoint") + def private_dns_only_for_inbound_resolver_endpoint(self) -> Optional['VpcEndpointDnsOptionsSpecificationPrivateDnsOnlyForInboundResolverEndpoint']: + return pulumi.get(self, "private_dns_only_for_inbound_resolver_endpoint") + + @pulumi.output_type class VpnConnectionCloudwatchLogOptionsSpecification(dict): """ diff --git a/sdk/python/pulumi_aws_native/ec2/vpc_endpoint.py b/sdk/python/pulumi_aws_native/ec2/vpc_endpoint.py index 77441d8b3a..4dd44b24fd 100644 --- a/sdk/python/pulumi_aws_native/ec2/vpc_endpoint.py +++ b/sdk/python/pulumi_aws_native/ec2/vpc_endpoint.py @@ -13,24 +13,29 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +from . import outputs from ._enums import * +from ._inputs import * __all__ = ['VpcEndpointArgs', 'VpcEndpoint'] @pulumi.input_type class VpcEndpointArgs: def __init__(__self__, *, - service_name: pulumi.Input[str], vpc_id: pulumi.Input[str], + dns_options: Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationArgs']] = None, + ip_address_type: Optional[pulumi.Input['VpcEndpointIpAddressType']] = None, policy_document: Optional[Any] = None, private_dns_enabled: Optional[pulumi.Input[bool]] = None, + resource_configuration_arn: Optional[pulumi.Input[str]] = None, route_table_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + service_name: Optional[pulumi.Input[str]] = None, + service_network_arn: Optional[pulumi.Input[str]] = None, subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, vpc_endpoint_type: Optional[pulumi.Input['VpcEndpointType']] = None): """ The set of arguments for constructing a VpcEndpoint resource. - :param pulumi.Input[str] service_name: The name of the endpoint service. :param pulumi.Input[str] vpc_id: The ID of the VPC. :param Any policy_document: An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints. For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section: @@ -43,37 +48,35 @@ def __init__(__self__, *, Default: ``false`` :param pulumi.Input[Sequence[pulumi.Input[str]]] route_table_ids: The IDs of the route tables. Routing is supported only for gateway endpoints. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The IDs of the security groups to associate with the endpoint network interfaces. If this parameter is not specified, we use the default security group for the VPC. Security groups are supported only for interface endpoints. + :param pulumi.Input[str] service_name: The name of the endpoint service. :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: The IDs of the subnets in which to create endpoint network interfaces. You must specify this property for an interface endpoint or a Gateway Load Balancer endpoint. You can't specify this property for a gateway endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet. :param pulumi.Input['VpcEndpointType'] vpc_endpoint_type: The type of endpoint. Default: Gateway """ - pulumi.set(__self__, "service_name", service_name) pulumi.set(__self__, "vpc_id", vpc_id) + if dns_options is not None: + pulumi.set(__self__, "dns_options", dns_options) + if ip_address_type is not None: + pulumi.set(__self__, "ip_address_type", ip_address_type) if policy_document is not None: pulumi.set(__self__, "policy_document", policy_document) if private_dns_enabled is not None: pulumi.set(__self__, "private_dns_enabled", private_dns_enabled) + if resource_configuration_arn is not None: + pulumi.set(__self__, "resource_configuration_arn", resource_configuration_arn) if route_table_ids is not None: pulumi.set(__self__, "route_table_ids", route_table_ids) if security_group_ids is not None: pulumi.set(__self__, "security_group_ids", security_group_ids) + if service_name is not None: + pulumi.set(__self__, "service_name", service_name) + if service_network_arn is not None: + pulumi.set(__self__, "service_network_arn", service_network_arn) if subnet_ids is not None: pulumi.set(__self__, "subnet_ids", subnet_ids) if vpc_endpoint_type is not None: pulumi.set(__self__, "vpc_endpoint_type", vpc_endpoint_type) - @property - @pulumi.getter(name="serviceName") - def service_name(self) -> pulumi.Input[str]: - """ - The name of the endpoint service. - """ - return pulumi.get(self, "service_name") - - @service_name.setter - def service_name(self, value: pulumi.Input[str]): - pulumi.set(self, "service_name", value) - @property @pulumi.getter(name="vpcId") def vpc_id(self) -> pulumi.Input[str]: @@ -86,6 +89,24 @@ def vpc_id(self) -> pulumi.Input[str]: def vpc_id(self, value: pulumi.Input[str]): pulumi.set(self, "vpc_id", value) + @property + @pulumi.getter(name="dnsOptions") + def dns_options(self) -> Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationArgs']]: + return pulumi.get(self, "dns_options") + + @dns_options.setter + def dns_options(self, value: Optional[pulumi.Input['VpcEndpointDnsOptionsSpecificationArgs']]): + pulumi.set(self, "dns_options", value) + + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> Optional[pulumi.Input['VpcEndpointIpAddressType']]: + return pulumi.get(self, "ip_address_type") + + @ip_address_type.setter + def ip_address_type(self, value: Optional[pulumi.Input['VpcEndpointIpAddressType']]): + pulumi.set(self, "ip_address_type", value) + @property @pulumi.getter(name="policyDocument") def policy_document(self) -> Optional[Any]: @@ -117,6 +138,15 @@ def private_dns_enabled(self) -> Optional[pulumi.Input[bool]]: def private_dns_enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "private_dns_enabled", value) + @property + @pulumi.getter(name="resourceConfigurationArn") + def resource_configuration_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "resource_configuration_arn") + + @resource_configuration_arn.setter + def resource_configuration_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_configuration_arn", value) + @property @pulumi.getter(name="routeTableIds") def route_table_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -141,6 +171,27 @@ def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str] def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "security_group_ids", value) + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the endpoint service. + """ + return pulumi.get(self, "service_name") + + @service_name.setter + def service_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "service_name", value) + + @property + @pulumi.getter(name="serviceNetworkArn") + def service_network_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "service_network_arn") + + @service_network_arn.setter + def service_network_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "service_network_arn", value) + @property @pulumi.getter(name="subnetIds") def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -172,11 +223,15 @@ class VpcEndpoint(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + dns_options: Optional[pulumi.Input[Union['VpcEndpointDnsOptionsSpecificationArgs', 'VpcEndpointDnsOptionsSpecificationArgsDict']]] = None, + ip_address_type: Optional[pulumi.Input['VpcEndpointIpAddressType']] = None, policy_document: Optional[Any] = None, private_dns_enabled: Optional[pulumi.Input[bool]] = None, + resource_configuration_arn: Optional[pulumi.Input[str]] = None, route_table_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, service_name: Optional[pulumi.Input[str]] = None, + service_network_arn: Optional[pulumi.Input[str]] = None, subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, vpc_endpoint_type: Optional[pulumi.Input['VpcEndpointType']] = None, vpc_id: Optional[pulumi.Input[str]] = None, @@ -239,11 +294,15 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + dns_options: Optional[pulumi.Input[Union['VpcEndpointDnsOptionsSpecificationArgs', 'VpcEndpointDnsOptionsSpecificationArgsDict']]] = None, + ip_address_type: Optional[pulumi.Input['VpcEndpointIpAddressType']] = None, policy_document: Optional[Any] = None, private_dns_enabled: Optional[pulumi.Input[bool]] = None, + resource_configuration_arn: Optional[pulumi.Input[str]] = None, route_table_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, service_name: Optional[pulumi.Input[str]] = None, + service_network_arn: Optional[pulumi.Input[str]] = None, subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, vpc_endpoint_type: Optional[pulumi.Input['VpcEndpointType']] = None, vpc_id: Optional[pulumi.Input[str]] = None, @@ -256,13 +315,15 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = VpcEndpointArgs.__new__(VpcEndpointArgs) + __props__.__dict__["dns_options"] = dns_options + __props__.__dict__["ip_address_type"] = ip_address_type __props__.__dict__["policy_document"] = policy_document __props__.__dict__["private_dns_enabled"] = private_dns_enabled + __props__.__dict__["resource_configuration_arn"] = resource_configuration_arn __props__.__dict__["route_table_ids"] = route_table_ids __props__.__dict__["security_group_ids"] = security_group_ids - if service_name is None and not opts.urn: - raise TypeError("Missing required property 'service_name'") __props__.__dict__["service_name"] = service_name + __props__.__dict__["service_network_arn"] = service_network_arn __props__.__dict__["subnet_ids"] = subnet_ids __props__.__dict__["vpc_endpoint_type"] = vpc_endpoint_type if vpc_id is None and not opts.urn: @@ -272,7 +333,7 @@ def _internal_init(__self__, __props__.__dict__["creation_timestamp"] = None __props__.__dict__["dns_entries"] = None __props__.__dict__["network_interface_ids"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["serviceName", "vpcEndpointType", "vpcId"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["resourceConfigurationArn", "serviceName", "serviceNetworkArn", "vpcEndpointType", "vpcId"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(VpcEndpoint, __self__).__init__( 'aws-native:ec2:VpcEndpoint', @@ -299,12 +360,16 @@ def get(resource_name: str, __props__.__dict__["aws_id"] = None __props__.__dict__["creation_timestamp"] = None __props__.__dict__["dns_entries"] = None + __props__.__dict__["dns_options"] = None + __props__.__dict__["ip_address_type"] = None __props__.__dict__["network_interface_ids"] = None __props__.__dict__["policy_document"] = None __props__.__dict__["private_dns_enabled"] = None + __props__.__dict__["resource_configuration_arn"] = None __props__.__dict__["route_table_ids"] = None __props__.__dict__["security_group_ids"] = None __props__.__dict__["service_name"] = None + __props__.__dict__["service_network_arn"] = None __props__.__dict__["subnet_ids"] = None __props__.__dict__["vpc_endpoint_type"] = None __props__.__dict__["vpc_id"] = None @@ -340,6 +405,16 @@ def dns_entries(self) -> pulumi.Output[Sequence[str]]: """ return pulumi.get(self, "dns_entries") + @property + @pulumi.getter(name="dnsOptions") + def dns_options(self) -> pulumi.Output[Optional['outputs.VpcEndpointDnsOptionsSpecification']]: + return pulumi.get(self, "dns_options") + + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> pulumi.Output[Optional['VpcEndpointIpAddressType']]: + return pulumi.get(self, "ip_address_type") + @property @pulumi.getter(name="networkInterfaceIds") def network_interface_ids(self) -> pulumi.Output[Sequence[str]]: @@ -371,6 +446,11 @@ def private_dns_enabled(self) -> pulumi.Output[Optional[bool]]: """ return pulumi.get(self, "private_dns_enabled") + @property + @pulumi.getter(name="resourceConfigurationArn") + def resource_configuration_arn(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "resource_configuration_arn") + @property @pulumi.getter(name="routeTableIds") def route_table_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: @@ -389,12 +469,17 @@ def security_group_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: @property @pulumi.getter(name="serviceName") - def service_name(self) -> pulumi.Output[str]: + def service_name(self) -> pulumi.Output[Optional[str]]: """ The name of the endpoint service. """ return pulumi.get(self, "service_name") + @property + @pulumi.getter(name="serviceNetworkArn") + def service_network_arn(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "service_network_arn") + @property @pulumi.getter(name="subnetIds") def subnet_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: diff --git a/sdk/python/pulumi_aws_native/ecs/_enums.py b/sdk/python/pulumi_aws_native/ecs/_enums.py index 26db1806a0..53a18609ac 100644 --- a/sdk/python/pulumi_aws_native/ecs/_enums.py +++ b/sdk/python/pulumi_aws_native/ecs/_enums.py @@ -78,8 +78,7 @@ class ClusterCapacityProviderAssociationsCapacityProvider0(str, Enum): class ServiceAvailabilityZoneRebalancing(str, Enum): """ Indicates whether to use Availability Zone rebalancing for the service. - - For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. """ ENABLED = "ENABLED" DISABLED = "DISABLED" @@ -87,7 +86,7 @@ class ServiceAvailabilityZoneRebalancing(str, Enum): class ServiceAwsVpcConfigurationAssignPublicIp(str, Enum): """ - Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. """ DISABLED = "DISABLED" ENABLED = "ENABLED" diff --git a/sdk/python/pulumi_aws_native/ecs/_inputs.py b/sdk/python/pulumi_aws_native/ecs/_inputs.py index fca45f87d5..034fd58445 100644 --- a/sdk/python/pulumi_aws_native/ecs/_inputs.py +++ b/sdk/python/pulumi_aws_native/ecs/_inputs.py @@ -968,7 +968,7 @@ class ServiceAwsVpcConfigurationArgsDict(TypedDict): """ assign_public_ip: NotRequired[pulumi.Input['ServiceAwsVpcConfigurationAssignPublicIp']] """ - Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. """ security_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -991,7 +991,7 @@ def __init__(__self__, *, subnets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ An object representing the networking details for a task or service. For example ``awsVpcConfiguration={subnets=["subnet-12344321"],securityGroups=["sg-12344321"]}``. - :param pulumi.Input['ServiceAwsVpcConfigurationAssignPublicIp'] assign_public_ip: Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + :param pulumi.Input['ServiceAwsVpcConfigurationAssignPublicIp'] assign_public_ip: Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration``. All specified security groups must be from the same VPC. :param pulumi.Input[Sequence[pulumi.Input[str]]] subnets: The IDs of the subnets associated with the task or service. There's a limit of 16 subnets that can be specified per ``awsvpcConfiguration``. @@ -1008,7 +1008,7 @@ def __init__(__self__, *, @pulumi.getter(name="assignPublicIp") def assign_public_ip(self) -> Optional[pulumi.Input['ServiceAwsVpcConfigurationAssignPublicIp']]: """ - Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. """ return pulumi.get(self, "assign_public_ip") @@ -1880,7 +1880,7 @@ def minimum_healthy_percent(self, value: Optional[pulumi.Input[int]]): if not MYPY: class ServiceDeploymentControllerArgsDict(TypedDict): """ - The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + The deployment controller to use for the service. """ type: NotRequired[pulumi.Input['ServiceDeploymentControllerType']] """ @@ -1895,7 +1895,7 @@ class ServiceDeploymentControllerArgs: def __init__(__self__, *, type: Optional[pulumi.Input['ServiceDeploymentControllerType']] = None): """ - The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + The deployment controller to use for the service. :param pulumi.Input['ServiceDeploymentControllerType'] type: The deployment controller type to use. There are three deployment controller types available: + ECS The rolling update (ECS) deployment type involves replacing the current running version of the container with the latest version. The number of containers Amazon ECS adds or removes from the service during a rolling update is controlled by adjusting the minimum and maximum number of healthy tasks allowed during a service deployment, as specified in the DeploymentConfiguration. + CODE_DEPLOY The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment model powered by , which allows you to verify a new deployment of a service before sending production traffic to it. + EXTERNAL The external (EXTERNAL) deployment type enables you to use any third-party deployment controller for full control over the deployment process for an Amazon ECS service. """ @@ -3053,13 +3053,17 @@ def managed_ebs_volume(self, value: Optional[pulumi.Input['ServiceManagedEbsVolu if not MYPY: class ServiceVpcLatticeConfigurationArgsDict(TypedDict): + """ + The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + """ port_name: pulumi.Input[str] """ - The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. """ role_arn: pulumi.Input[str] """ - The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + infrastructure IAM role that is used to manage your VPC Lattice infrastructure. """ target_group_arn: pulumi.Input[str] """ @@ -3075,8 +3079,10 @@ def __init__(__self__, *, role_arn: pulumi.Input[str], target_group_arn: pulumi.Input[str]): """ - :param pulumi.Input[str] port_name: The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. - :param pulumi.Input[str] role_arn: The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + :param pulumi.Input[str] port_name: The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. + :param pulumi.Input[str] role_arn: The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + infrastructure IAM role that is used to manage your VPC Lattice infrastructure. :param pulumi.Input[str] target_group_arn: The full Amazon Resource Name (ARN) of the target group or groups associated with the VPC Lattice configuration that the Amazon ECS tasks will be registered to. """ pulumi.set(__self__, "port_name", port_name) @@ -3087,7 +3093,7 @@ def __init__(__self__, *, @pulumi.getter(name="portName") def port_name(self) -> pulumi.Input[str]: """ - The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. """ return pulumi.get(self, "port_name") @@ -3099,7 +3105,8 @@ def port_name(self, value: pulumi.Input[str]): @pulumi.getter(name="roleArn") def role_arn(self) -> pulumi.Input[str]: """ - The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + infrastructure IAM role that is used to manage your VPC Lattice infrastructure. """ return pulumi.get(self, "role_arn") @@ -4762,7 +4769,7 @@ class TaskDefinitionEphemeralStorageArgsDict(TypedDict): """ size_in_gi_b: NotRequired[pulumi.Input[int]] """ - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. """ elif False: TaskDefinitionEphemeralStorageArgsDict: TypeAlias = Mapping[str, Any] @@ -4776,7 +4783,7 @@ def __init__(__self__, *, For tasks using the Fargate launch type, the task requires the following platforms: + Linux platform version ``1.4.0`` or later. + Windows platform version ``1.0.0`` or later. - :param pulumi.Input[int] size_in_gi_b: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + :param pulumi.Input[int] size_in_gi_b: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. """ if size_in_gi_b is not None: pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) @@ -4785,7 +4792,7 @@ def __init__(__self__, *, @pulumi.getter(name="sizeInGiB") def size_in_gi_b(self) -> Optional[pulumi.Input[int]]: """ - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. """ return pulumi.get(self, "size_in_gi_b") diff --git a/sdk/python/pulumi_aws_native/ecs/get_service.py b/sdk/python/pulumi_aws_native/ecs/get_service.py index e05101ec03..ef066cfecb 100644 --- a/sdk/python/pulumi_aws_native/ecs/get_service.py +++ b/sdk/python/pulumi_aws_native/ecs/get_service.py @@ -90,8 +90,7 @@ def __init__(__self__, availability_zone_rebalancing=None, capacity_provider_str def availability_zone_rebalancing(self) -> Optional['ServiceAvailabilityZoneRebalancing']: """ Indicates whether to use Availability Zone rebalancing for the service. - - For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. """ return pulumi.get(self, "availability_zone_rebalancing") @@ -144,9 +143,8 @@ def enable_execute_command(self) -> Optional[bool]: @pulumi.getter(name="healthCheckGracePeriodSeconds") def health_check_grace_period_seconds(self) -> Optional[int]: """ - The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. """ return pulumi.get(self, "health_check_grace_period_seconds") diff --git a/sdk/python/pulumi_aws_native/ecs/outputs.py b/sdk/python/pulumi_aws_native/ecs/outputs.py index 6aa8d46cf0..89b3297b84 100644 --- a/sdk/python/pulumi_aws_native/ecs/outputs.py +++ b/sdk/python/pulumi_aws_native/ecs/outputs.py @@ -776,7 +776,7 @@ def __init__(__self__, *, subnets: Optional[Sequence[str]] = None): """ An object representing the networking details for a task or service. For example ``awsVpcConfiguration={subnets=["subnet-12344321"],securityGroups=["sg-12344321"]}``. - :param 'ServiceAwsVpcConfigurationAssignPublicIp' assign_public_ip: Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + :param 'ServiceAwsVpcConfigurationAssignPublicIp' assign_public_ip: Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. :param Sequence[str] security_groups: The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration``. All specified security groups must be from the same VPC. :param Sequence[str] subnets: The IDs of the subnets associated with the task or service. There's a limit of 16 subnets that can be specified per ``awsvpcConfiguration``. @@ -793,7 +793,7 @@ def __init__(__self__, *, @pulumi.getter(name="assignPublicIp") def assign_public_ip(self) -> Optional['ServiceAwsVpcConfigurationAssignPublicIp']: """ - Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. + Whether the task's elastic network interface receives a public IP address. The default value is ``ENABLED``. """ return pulumi.get(self, "assign_public_ip") @@ -1495,12 +1495,12 @@ def minimum_healthy_percent(self) -> Optional[int]: @pulumi.output_type class ServiceDeploymentController(dict): """ - The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + The deployment controller to use for the service. """ def __init__(__self__, *, type: Optional['ServiceDeploymentControllerType'] = None): """ - The deployment controller to use for the service. For more information, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html) in the *Amazon Elastic Container Service Developer Guide*. + The deployment controller to use for the service. :param 'ServiceDeploymentControllerType' type: The deployment controller type to use. There are three deployment controller types available: + ECS The rolling update (ECS) deployment type involves replacing the current running version of the container with the latest version. The number of containers Amazon ECS adds or removes from the service during a rolling update is controlled by adjusting the minimum and maximum number of healthy tasks allowed during a service deployment, as specified in the DeploymentConfiguration. + CODE_DEPLOY The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment model powered by , which allows you to verify a new deployment of a service before sending production traffic to it. + EXTERNAL The external (EXTERNAL) deployment type enables you to use any third-party deployment controller for full control over the deployment process for an Amazon ECS service. """ @@ -2427,6 +2427,9 @@ def managed_ebs_volume(self) -> Optional['outputs.ServiceManagedEbsVolumeConfigu @pulumi.output_type class ServiceVpcLatticeConfiguration(dict): + """ + The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -2453,8 +2456,10 @@ def __init__(__self__, *, role_arn: str, target_group_arn: str): """ - :param str port_name: The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. - :param str role_arn: The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + The VPC Lattice configuration for your service that holds the information for the target group(s) Amazon ECS tasks will be registered to. + :param str port_name: The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. + :param str role_arn: The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + infrastructure IAM role that is used to manage your VPC Lattice infrastructure. :param str target_group_arn: The full Amazon Resource Name (ARN) of the target group or groups associated with the VPC Lattice configuration that the Amazon ECS tasks will be registered to. """ pulumi.set(__self__, "port_name", port_name) @@ -2465,7 +2470,7 @@ def __init__(__self__, *, @pulumi.getter(name="portName") def port_name(self) -> str: """ - The name of the port mapping to register in the VPC Lattice target group. This is the name of the `portMapping` you defined in your task definition. + The name of the port mapping to register in the VPC Lattice target group. This is the name of the ``portMapping`` you defined in your task definition. """ return pulumi.get(self, "port_name") @@ -2473,7 +2478,8 @@ def port_name(self) -> str: @pulumi.getter(name="roleArn") def role_arn(self) -> str: """ - The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS infrastructure IAM role that is used to manage your VPC Lattice infrastructure. + The ARN of the IAM role to associate with this VPC Lattice configuration. This is the Amazon ECS + infrastructure IAM role that is used to manage your VPC Lattice infrastructure. """ return pulumi.get(self, "role_arn") @@ -3700,7 +3706,7 @@ def __init__(__self__, *, For tasks using the Fargate launch type, the task requires the following platforms: + Linux platform version ``1.4.0`` or later. + Windows platform version ``1.0.0`` or later. - :param int size_in_gi_b: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + :param int size_in_gi_b: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. """ if size_in_gi_b is not None: pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) @@ -3709,7 +3715,7 @@ def __init__(__self__, *, @pulumi.getter(name="sizeInGiB") def size_in_gi_b(self) -> Optional[int]: """ - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``20`` GiB and the maximum supported value is ``200`` GiB. + The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is ``21`` GiB and the maximum supported value is ``200`` GiB. """ return pulumi.get(self, "size_in_gi_b") diff --git a/sdk/python/pulumi_aws_native/ecs/service.py b/sdk/python/pulumi_aws_native/ecs/service.py index c43885020a..02fb1fcd42 100644 --- a/sdk/python/pulumi_aws_native/ecs/service.py +++ b/sdk/python/pulumi_aws_native/ecs/service.py @@ -52,8 +52,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a Service resource. :param pulumi.Input['ServiceAvailabilityZoneRebalancing'] availability_zone_rebalancing: Indicates whether to use Availability Zone rebalancing for the service. - - For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. :param pulumi.Input[Sequence[pulumi.Input['ServiceCapacityProviderStrategyItemArgs']]] capacity_provider_strategy: The capacity provider strategy to use for the service. If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. A capacity provider strategy may contain a maximum of 6 capacity providers. @@ -66,9 +65,8 @@ def __init__(__self__, *, :param pulumi.Input[bool] enable_ecs_managed_tags: Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see [Tagging your Amazon ECS resources](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html) in the *Amazon Elastic Container Service Developer Guide*. When you use Amazon ECS managed tags, you need to set the ``propagateTags`` request parameter. :param pulumi.Input[bool] enable_execute_command: Determines whether the execute command functionality is turned on for the service. If ``true``, the execute command functionality is turned on for all containers in tasks as part of the service. - :param pulumi.Input[int] health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + :param pulumi.Input[int] health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. :param pulumi.Input['ServiceLaunchType'] launch_type: The launch type on which to run your service. For more information, see [Amazon ECS Launch Types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html) in the *Amazon Elastic Container Service Developer Guide*. :param pulumi.Input[Sequence[pulumi.Input['ServiceLoadBalancerArgs']]] load_balancers: A list of load balancer objects to associate with the service. If you specify the ``Role`` property, ``LoadBalancers`` must be specified as well. For information about the number of load balancers that you can specify per service, see [Service Load Balancing](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html) in the *Amazon Elastic Container Service Developer Guide*. :param pulumi.Input['ServiceNetworkConfigurationArgs'] network_configuration: The network configuration for the service. This parameter is required for task definitions that use the ``awsvpc`` network mode to receive their own elastic network interface, and it is not supported for other network modes. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*. @@ -163,8 +161,7 @@ def __init__(__self__, *, def availability_zone_rebalancing(self) -> Optional[pulumi.Input['ServiceAvailabilityZoneRebalancing']]: """ Indicates whether to use Availability Zone rebalancing for the service. - - For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. """ return pulumi.get(self, "availability_zone_rebalancing") @@ -265,9 +262,8 @@ def enable_execute_command(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="healthCheckGracePeriodSeconds") def health_check_grace_period_seconds(self) -> Optional[pulumi.Input[int]]: """ - The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. """ return pulumi.get(self, "health_check_grace_period_seconds") @@ -528,8 +524,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input['ServiceAvailabilityZoneRebalancing'] availability_zone_rebalancing: Indicates whether to use Availability Zone rebalancing for the service. - - For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. :param pulumi.Input[Sequence[pulumi.Input[Union['ServiceCapacityProviderStrategyItemArgs', 'ServiceCapacityProviderStrategyItemArgsDict']]]] capacity_provider_strategy: The capacity provider strategy to use for the service. If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. A capacity provider strategy may contain a maximum of 6 capacity providers. @@ -542,9 +537,8 @@ def __init__(__self__, :param pulumi.Input[bool] enable_ecs_managed_tags: Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see [Tagging your Amazon ECS resources](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html) in the *Amazon Elastic Container Service Developer Guide*. When you use Amazon ECS managed tags, you need to set the ``propagateTags`` request parameter. :param pulumi.Input[bool] enable_execute_command: Determines whether the execute command functionality is turned on for the service. If ``true``, the execute command functionality is turned on for all containers in tasks as part of the service. - :param pulumi.Input[int] health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + :param pulumi.Input[int] health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. :param pulumi.Input['ServiceLaunchType'] launch_type: The launch type on which to run your service. For more information, see [Amazon ECS Launch Types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html) in the *Amazon Elastic Container Service Developer Guide*. :param pulumi.Input[Sequence[pulumi.Input[Union['ServiceLoadBalancerArgs', 'ServiceLoadBalancerArgsDict']]]] load_balancers: A list of load balancer objects to associate with the service. If you specify the ``Role`` property, ``LoadBalancers`` must be specified as well. For information about the number of load balancers that you can specify per service, see [Service Load Balancing](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html) in the *Amazon Elastic Container Service Developer Guide*. :param pulumi.Input[Union['ServiceNetworkConfigurationArgs', 'ServiceNetworkConfigurationArgsDict']] network_configuration: The network configuration for the service. This parameter is required for task definitions that use the ``awsvpc`` network mode to receive their own elastic network interface, and it is not supported for other network modes. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*. @@ -728,8 +722,7 @@ def get(resource_name: str, def availability_zone_rebalancing(self) -> pulumi.Output[Optional['ServiceAvailabilityZoneRebalancing']]: """ Indicates whether to use Availability Zone rebalancing for the service. - - For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide* . + For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*. """ return pulumi.get(self, "availability_zone_rebalancing") @@ -798,9 +791,8 @@ def enable_execute_command(self) -> pulumi.Output[Optional[bool]]: @pulumi.getter(name="healthCheckGracePeriodSeconds") def health_check_grace_period_seconds(self) -> pulumi.Output[Optional[int]]: """ - The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is configured to use a load balancer. If your service has a load balancer defined and you don't specify a health check grace period value, the default value of ``0`` is used. - If you do not use an Elastic Load Balancing, we recommend that you use the ``startPeriod`` in the task definition health check parameters. For more information, see [Health check](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html). - If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. + The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. + If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up. """ return pulumi.get(self, "health_check_grace_period_seconds") diff --git a/sdk/python/pulumi_aws_native/emrserverless/_inputs.py b/sdk/python/pulumi_aws_native/emrserverless/_inputs.py index 7f2f363609..275db1f1d9 100644 --- a/sdk/python/pulumi_aws_native/emrserverless/_inputs.py +++ b/sdk/python/pulumi_aws_native/emrserverless/_inputs.py @@ -44,6 +44,8 @@ 'ApplicationNetworkConfigurationArgsDict', 'ApplicationS3MonitoringConfigurationArgs', 'ApplicationS3MonitoringConfigurationArgsDict', + 'ApplicationSchedulerConfigurationArgs', + 'ApplicationSchedulerConfigurationArgsDict', 'ApplicationWorkerConfigurationArgs', 'ApplicationWorkerConfigurationArgsDict', 'ApplicationWorkerTypeSpecificationInputArgs', @@ -820,6 +822,62 @@ def log_uri(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "log_uri", value) +if not MYPY: + class ApplicationSchedulerConfigurationArgsDict(TypedDict): + """ + The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + """ + max_concurrent_runs: NotRequired[pulumi.Input[int]] + """ + The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + """ + queue_timeout_minutes: NotRequired[pulumi.Input[int]] + """ + The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + """ +elif False: + ApplicationSchedulerConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ApplicationSchedulerConfigurationArgs: + def __init__(__self__, *, + max_concurrent_runs: Optional[pulumi.Input[int]] = None, + queue_timeout_minutes: Optional[pulumi.Input[int]] = None): + """ + The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + :param pulumi.Input[int] max_concurrent_runs: The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + :param pulumi.Input[int] queue_timeout_minutes: The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + """ + if max_concurrent_runs is not None: + pulumi.set(__self__, "max_concurrent_runs", max_concurrent_runs) + if queue_timeout_minutes is not None: + pulumi.set(__self__, "queue_timeout_minutes", queue_timeout_minutes) + + @property + @pulumi.getter(name="maxConcurrentRuns") + def max_concurrent_runs(self) -> Optional[pulumi.Input[int]]: + """ + The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + """ + return pulumi.get(self, "max_concurrent_runs") + + @max_concurrent_runs.setter + def max_concurrent_runs(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_concurrent_runs", value) + + @property + @pulumi.getter(name="queueTimeoutMinutes") + def queue_timeout_minutes(self) -> Optional[pulumi.Input[int]]: + """ + The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + """ + return pulumi.get(self, "queue_timeout_minutes") + + @queue_timeout_minutes.setter + def queue_timeout_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "queue_timeout_minutes", value) + + if not MYPY: class ApplicationWorkerConfigurationArgsDict(TypedDict): cpu: pulumi.Input[str] diff --git a/sdk/python/pulumi_aws_native/emrserverless/application.py b/sdk/python/pulumi_aws_native/emrserverless/application.py index b6fdb6c15e..62f44c870c 100644 --- a/sdk/python/pulumi_aws_native/emrserverless/application.py +++ b/sdk/python/pulumi_aws_native/emrserverless/application.py @@ -37,6 +37,7 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, network_configuration: Optional[pulumi.Input['ApplicationNetworkConfigurationArgs']] = None, runtime_configuration: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationConfigurationObjectArgs']]]] = None, + scheduler_configuration: Optional[pulumi.Input['ApplicationSchedulerConfigurationArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None, worker_type_specifications: Optional[pulumi.Input[Mapping[str, pulumi.Input['ApplicationWorkerTypeSpecificationInputArgs']]]] = None): """ @@ -54,6 +55,7 @@ def __init__(__self__, *, :param pulumi.Input[str] name: User friendly Application name. :param pulumi.Input['ApplicationNetworkConfigurationArgs'] network_configuration: Network Configuration for customer VPC connectivity. :param pulumi.Input[Sequence[pulumi.Input['ApplicationConfigurationObjectArgs']]] runtime_configuration: The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. + :param pulumi.Input['ApplicationSchedulerConfigurationArgs'] scheduler_configuration: The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: Tag map with key and value :param pulumi.Input[Mapping[str, pulumi.Input['ApplicationWorkerTypeSpecificationInputArgs']]] worker_type_specifications: The key-value pairs that specify worker type to WorkerTypeSpecificationInput. This parameter must contain all valid worker types for a Spark or Hive application. Valid worker types include Driver and Executor for Spark applications and HiveDriver and TezTask for Hive applications. You can either set image details in this parameter for each worker type, or in imageConfiguration for all worker types. """ @@ -81,6 +83,8 @@ def __init__(__self__, *, pulumi.set(__self__, "network_configuration", network_configuration) if runtime_configuration is not None: pulumi.set(__self__, "runtime_configuration", runtime_configuration) + if scheduler_configuration is not None: + pulumi.set(__self__, "scheduler_configuration", scheduler_configuration) if tags is not None: pulumi.set(__self__, "tags", tags) if worker_type_specifications is not None: @@ -242,6 +246,18 @@ def runtime_configuration(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[' def runtime_configuration(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationConfigurationObjectArgs']]]]): pulumi.set(self, "runtime_configuration", value) + @property + @pulumi.getter(name="schedulerConfiguration") + def scheduler_configuration(self) -> Optional[pulumi.Input['ApplicationSchedulerConfigurationArgs']]: + """ + The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + """ + return pulumi.get(self, "scheduler_configuration") + + @scheduler_configuration.setter + def scheduler_configuration(self, value: Optional[pulumi.Input['ApplicationSchedulerConfigurationArgs']]): + pulumi.set(self, "scheduler_configuration", value) + @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: @@ -284,6 +300,7 @@ def __init__(__self__, network_configuration: Optional[pulumi.Input[Union['ApplicationNetworkConfigurationArgs', 'ApplicationNetworkConfigurationArgsDict']]] = None, release_label: Optional[pulumi.Input[str]] = None, runtime_configuration: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApplicationConfigurationObjectArgs', 'ApplicationConfigurationObjectArgsDict']]]]] = None, + scheduler_configuration: Optional[pulumi.Input[Union['ApplicationSchedulerConfigurationArgs', 'ApplicationSchedulerConfigurationArgsDict']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, type: Optional[pulumi.Input[str]] = None, worker_type_specifications: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['ApplicationWorkerTypeSpecificationInputArgs', 'ApplicationWorkerTypeSpecificationInputArgsDict']]]]] = None, @@ -305,6 +322,7 @@ def __init__(__self__, :param pulumi.Input[Union['ApplicationNetworkConfigurationArgs', 'ApplicationNetworkConfigurationArgsDict']] network_configuration: Network Configuration for customer VPC connectivity. :param pulumi.Input[str] release_label: EMR release label. :param pulumi.Input[Sequence[pulumi.Input[Union['ApplicationConfigurationObjectArgs', 'ApplicationConfigurationObjectArgsDict']]]] runtime_configuration: The [Configuration](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the [GetApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) API operation. + :param pulumi.Input[Union['ApplicationSchedulerConfigurationArgs', 'ApplicationSchedulerConfigurationArgsDict']] scheduler_configuration: The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: Tag map with key and value :param pulumi.Input[str] type: The type of the application :param pulumi.Input[Mapping[str, pulumi.Input[Union['ApplicationWorkerTypeSpecificationInputArgs', 'ApplicationWorkerTypeSpecificationInputArgsDict']]]] worker_type_specifications: The key-value pairs that specify worker type to WorkerTypeSpecificationInput. This parameter must contain all valid worker types for a Spark or Hive application. Valid worker types include Driver and Executor for Spark applications and HiveDriver and TezTask for Hive applications. You can either set image details in this parameter for each worker type, or in imageConfiguration for all worker types. @@ -345,6 +363,7 @@ def _internal_init(__self__, network_configuration: Optional[pulumi.Input[Union['ApplicationNetworkConfigurationArgs', 'ApplicationNetworkConfigurationArgsDict']]] = None, release_label: Optional[pulumi.Input[str]] = None, runtime_configuration: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApplicationConfigurationObjectArgs', 'ApplicationConfigurationObjectArgsDict']]]]] = None, + scheduler_configuration: Optional[pulumi.Input[Union['ApplicationSchedulerConfigurationArgs', 'ApplicationSchedulerConfigurationArgsDict']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, type: Optional[pulumi.Input[str]] = None, worker_type_specifications: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['ApplicationWorkerTypeSpecificationInputArgs', 'ApplicationWorkerTypeSpecificationInputArgsDict']]]]] = None, @@ -371,6 +390,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'release_label'") __props__.__dict__["release_label"] = release_label __props__.__dict__["runtime_configuration"] = runtime_configuration + __props__.__dict__["scheduler_configuration"] = scheduler_configuration __props__.__dict__["tags"] = tags if type is None and not opts.urn: raise TypeError("Missing required property 'type'") @@ -416,6 +436,7 @@ def get(resource_name: str, __props__.__dict__["network_configuration"] = None __props__.__dict__["release_label"] = None __props__.__dict__["runtime_configuration"] = None + __props__.__dict__["scheduler_configuration"] = None __props__.__dict__["tags"] = None __props__.__dict__["type"] = None __props__.__dict__["worker_type_specifications"] = None @@ -533,6 +554,14 @@ def runtime_configuration(self) -> pulumi.Output[Optional[Sequence['outputs.Appl """ return pulumi.get(self, "runtime_configuration") + @property + @pulumi.getter(name="schedulerConfiguration") + def scheduler_configuration(self) -> pulumi.Output[Optional['outputs.ApplicationSchedulerConfiguration']]: + """ + The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + """ + return pulumi.get(self, "scheduler_configuration") + @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: diff --git a/sdk/python/pulumi_aws_native/emrserverless/get_application.py b/sdk/python/pulumi_aws_native/emrserverless/get_application.py index f3793096c4..e7d3682af4 100644 --- a/sdk/python/pulumi_aws_native/emrserverless/get_application.py +++ b/sdk/python/pulumi_aws_native/emrserverless/get_application.py @@ -26,7 +26,7 @@ @pulumi.output_type class GetApplicationResult: - def __init__(__self__, application_id=None, architecture=None, arn=None, auto_start_configuration=None, auto_stop_configuration=None, image_configuration=None, initial_capacity=None, interactive_configuration=None, maximum_capacity=None, monitoring_configuration=None, network_configuration=None, release_label=None, runtime_configuration=None, tags=None, worker_type_specifications=None): + def __init__(__self__, application_id=None, architecture=None, arn=None, auto_start_configuration=None, auto_stop_configuration=None, image_configuration=None, initial_capacity=None, interactive_configuration=None, maximum_capacity=None, monitoring_configuration=None, network_configuration=None, release_label=None, runtime_configuration=None, scheduler_configuration=None, tags=None, worker_type_specifications=None): if application_id and not isinstance(application_id, str): raise TypeError("Expected argument 'application_id' to be a str") pulumi.set(__self__, "application_id", application_id) @@ -66,6 +66,9 @@ def __init__(__self__, application_id=None, architecture=None, arn=None, auto_st if runtime_configuration and not isinstance(runtime_configuration, list): raise TypeError("Expected argument 'runtime_configuration' to be a list") pulumi.set(__self__, "runtime_configuration", runtime_configuration) + if scheduler_configuration and not isinstance(scheduler_configuration, dict): + raise TypeError("Expected argument 'scheduler_configuration' to be a dict") + pulumi.set(__self__, "scheduler_configuration", scheduler_configuration) if tags and not isinstance(tags, list): raise TypeError("Expected argument 'tags' to be a list") pulumi.set(__self__, "tags", tags) @@ -177,6 +180,14 @@ def runtime_configuration(self) -> Optional[Sequence['outputs.ApplicationConfigu """ return pulumi.get(self, "runtime_configuration") + @property + @pulumi.getter(name="schedulerConfiguration") + def scheduler_configuration(self) -> Optional['outputs.ApplicationSchedulerConfiguration']: + """ + The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + """ + return pulumi.get(self, "scheduler_configuration") + @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: @@ -213,6 +224,7 @@ def __await__(self): network_configuration=self.network_configuration, release_label=self.release_label, runtime_configuration=self.runtime_configuration, + scheduler_configuration=self.scheduler_configuration, tags=self.tags, worker_type_specifications=self.worker_type_specifications) @@ -244,6 +256,7 @@ def get_application(application_id: Optional[str] = None, network_configuration=pulumi.get(__ret__, 'network_configuration'), release_label=pulumi.get(__ret__, 'release_label'), runtime_configuration=pulumi.get(__ret__, 'runtime_configuration'), + scheduler_configuration=pulumi.get(__ret__, 'scheduler_configuration'), tags=pulumi.get(__ret__, 'tags'), worker_type_specifications=pulumi.get(__ret__, 'worker_type_specifications')) def get_application_output(application_id: Optional[pulumi.Input[str]] = None, @@ -272,5 +285,6 @@ def get_application_output(application_id: Optional[pulumi.Input[str]] = None, network_configuration=pulumi.get(__response__, 'network_configuration'), release_label=pulumi.get(__response__, 'release_label'), runtime_configuration=pulumi.get(__response__, 'runtime_configuration'), + scheduler_configuration=pulumi.get(__response__, 'scheduler_configuration'), tags=pulumi.get(__response__, 'tags'), worker_type_specifications=pulumi.get(__response__, 'worker_type_specifications'))) diff --git a/sdk/python/pulumi_aws_native/emrserverless/outputs.py b/sdk/python/pulumi_aws_native/emrserverless/outputs.py index 9fc40fd514..84abfbf036 100644 --- a/sdk/python/pulumi_aws_native/emrserverless/outputs.py +++ b/sdk/python/pulumi_aws_native/emrserverless/outputs.py @@ -31,6 +31,7 @@ 'ApplicationMonitoringConfiguration', 'ApplicationNetworkConfiguration', 'ApplicationS3MonitoringConfiguration', + 'ApplicationSchedulerConfiguration', 'ApplicationWorkerConfiguration', 'ApplicationWorkerTypeSpecificationInput', ] @@ -669,6 +670,60 @@ def log_uri(self) -> Optional[str]: return pulumi.get(self, "log_uri") +@pulumi.output_type +class ApplicationSchedulerConfiguration(dict): + """ + The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "maxConcurrentRuns": + suggest = "max_concurrent_runs" + elif key == "queueTimeoutMinutes": + suggest = "queue_timeout_minutes" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ApplicationSchedulerConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ApplicationSchedulerConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ApplicationSchedulerConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + max_concurrent_runs: Optional[int] = None, + queue_timeout_minutes: Optional[int] = None): + """ + The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above. + :param int max_concurrent_runs: The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + :param int queue_timeout_minutes: The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + """ + if max_concurrent_runs is not None: + pulumi.set(__self__, "max_concurrent_runs", max_concurrent_runs) + if queue_timeout_minutes is not None: + pulumi.set(__self__, "queue_timeout_minutes", queue_timeout_minutes) + + @property + @pulumi.getter(name="maxConcurrentRuns") + def max_concurrent_runs(self) -> Optional[int]: + """ + The maximum concurrent job runs on this application. If scheduler configuration is enabled on your application, the default value is 15. The valid range is 1 to 1000. + """ + return pulumi.get(self, "max_concurrent_runs") + + @property + @pulumi.getter(name="queueTimeoutMinutes") + def queue_timeout_minutes(self) -> Optional[int]: + """ + The maximum duration in minutes for the job in QUEUED state. If scheduler configuration is enabled on your application, the default value is 360 minutes (6 hours). The valid range is from 15 to 720. + """ + return pulumi.get(self, "queue_timeout_minutes") + + @pulumi.output_type class ApplicationWorkerConfiguration(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/events/_inputs.py b/sdk/python/pulumi_aws_native/events/_inputs.py index fc395aa34f..0eb3d3f402 100644 --- a/sdk/python/pulumi_aws_native/events/_inputs.py +++ b/sdk/python/pulumi_aws_native/events/_inputs.py @@ -2338,7 +2338,7 @@ def values(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): class RuleSageMakerPipelineParametersArgsDict(TypedDict): pipeline_parameter_list: NotRequired[pulumi.Input[Sequence[pulumi.Input['RuleSageMakerPipelineParameterArgsDict']]]] """ - List of Parameter names and values for SageMaker Model Building Pipeline execution. + List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ elif False: RuleSageMakerPipelineParametersArgsDict: TypeAlias = Mapping[str, Any] @@ -2348,7 +2348,7 @@ class RuleSageMakerPipelineParametersArgs: def __init__(__self__, *, pipeline_parameter_list: Optional[pulumi.Input[Sequence[pulumi.Input['RuleSageMakerPipelineParameterArgs']]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input['RuleSageMakerPipelineParameterArgs']]] pipeline_parameter_list: List of Parameter names and values for SageMaker Model Building Pipeline execution. + :param pulumi.Input[Sequence[pulumi.Input['RuleSageMakerPipelineParameterArgs']]] pipeline_parameter_list: List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ if pipeline_parameter_list is not None: pulumi.set(__self__, "pipeline_parameter_list", pipeline_parameter_list) @@ -2357,7 +2357,7 @@ def __init__(__self__, *, @pulumi.getter(name="pipelineParameterList") def pipeline_parameter_list(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleSageMakerPipelineParameterArgs']]]]: """ - List of Parameter names and values for SageMaker Model Building Pipeline execution. + List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ return pulumi.get(self, "pipeline_parameter_list") @@ -2370,11 +2370,11 @@ def pipeline_parameter_list(self, value: Optional[pulumi.Input[Sequence[pulumi.I class RuleSageMakerPipelineParameterArgsDict(TypedDict): name: pulumi.Input[str] """ - Name of parameter to start execution of a SageMaker Model Building Pipeline. + Name of parameter to start execution of a SageMaker AI Model Building Pipeline. """ value: pulumi.Input[str] """ - Value of parameter to start execution of a SageMaker Model Building Pipeline. + Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ elif False: RuleSageMakerPipelineParameterArgsDict: TypeAlias = Mapping[str, Any] @@ -2385,8 +2385,8 @@ def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str]): """ - :param pulumi.Input[str] name: Name of parameter to start execution of a SageMaker Model Building Pipeline. - :param pulumi.Input[str] value: Value of parameter to start execution of a SageMaker Model Building Pipeline. + :param pulumi.Input[str] name: Name of parameter to start execution of a SageMaker AI Model Building Pipeline. + :param pulumi.Input[str] value: Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -2395,7 +2395,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - Name of parameter to start execution of a SageMaker Model Building Pipeline. + Name of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "name") @@ -2407,7 +2407,7 @@ def name(self, value: pulumi.Input[str]): @pulumi.getter def value(self) -> pulumi.Input[str]: """ - Value of parameter to start execution of a SageMaker Model Building Pipeline. + Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "value") @@ -2567,9 +2567,9 @@ class RuleTargetArgsDict(TypedDict): """ sage_maker_pipeline_parameters: NotRequired[pulumi.Input['RuleSageMakerPipelineParametersArgsDict']] """ - Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. - If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. """ sqs_parameters: NotRequired[pulumi.Input['RuleSqsParametersArgsDict']] """ @@ -2620,9 +2620,9 @@ def __init__(__self__, *, :param pulumi.Input['RuleRetryPolicyArgs'] retry_policy: The retry policy configuration to use for the dead-letter queue. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. If one rule triggers multiple targets, you can use a different IAM role for each target. :param pulumi.Input['RuleRunCommandParametersArgs'] run_command_parameters: Parameters used when you are using the rule to invoke Amazon EC2 Run Command. - :param pulumi.Input['RuleSageMakerPipelineParametersArgs'] sage_maker_pipeline_parameters: Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + :param pulumi.Input['RuleSageMakerPipelineParametersArgs'] sage_maker_pipeline_parameters: Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. - If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. :param pulumi.Input['RuleSqsParametersArgs'] sqs_parameters: Contains the message group ID to use when the target is a FIFO queue. If you specify an SQS FIFO queue as a target, the queue must have content-based deduplication enabled. @@ -2848,9 +2848,9 @@ def run_command_parameters(self, value: Optional[pulumi.Input['RuleRunCommandPar @pulumi.getter(name="sageMakerPipelineParameters") def sage_maker_pipeline_parameters(self) -> Optional[pulumi.Input['RuleSageMakerPipelineParametersArgs']]: """ - Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. - If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. """ return pulumi.get(self, "sage_maker_pipeline_parameters") diff --git a/sdk/python/pulumi_aws_native/events/outputs.py b/sdk/python/pulumi_aws_native/events/outputs.py index f9d4ddacd7..76d6198b5f 100644 --- a/sdk/python/pulumi_aws_native/events/outputs.py +++ b/sdk/python/pulumi_aws_native/events/outputs.py @@ -1877,8 +1877,8 @@ def __init__(__self__, *, name: str, value: str): """ - :param str name: Name of parameter to start execution of a SageMaker Model Building Pipeline. - :param str value: Value of parameter to start execution of a SageMaker Model Building Pipeline. + :param str name: Name of parameter to start execution of a SageMaker AI Model Building Pipeline. + :param str value: Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -1887,7 +1887,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - Name of parameter to start execution of a SageMaker Model Building Pipeline. + Name of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "name") @@ -1895,7 +1895,7 @@ def name(self) -> str: @pulumi.getter def value(self) -> str: """ - Value of parameter to start execution of a SageMaker Model Building Pipeline. + Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "value") @@ -1922,7 +1922,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, pipeline_parameter_list: Optional[Sequence['outputs.RuleSageMakerPipelineParameter']] = None): """ - :param Sequence['RuleSageMakerPipelineParameter'] pipeline_parameter_list: List of Parameter names and values for SageMaker Model Building Pipeline execution. + :param Sequence['RuleSageMakerPipelineParameter'] pipeline_parameter_list: List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ if pipeline_parameter_list is not None: pulumi.set(__self__, "pipeline_parameter_list", pipeline_parameter_list) @@ -1931,7 +1931,7 @@ def __init__(__self__, *, @pulumi.getter(name="pipelineParameterList") def pipeline_parameter_list(self) -> Optional[Sequence['outputs.RuleSageMakerPipelineParameter']]: """ - List of Parameter names and values for SageMaker Model Building Pipeline execution. + List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ return pulumi.get(self, "pipeline_parameter_list") @@ -2085,9 +2085,9 @@ def __init__(__self__, *, :param 'RuleRetryPolicy' retry_policy: The retry policy configuration to use for the dead-letter queue. :param str role_arn: The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. If one rule triggers multiple targets, you can use a different IAM role for each target. :param 'RuleRunCommandParameters' run_command_parameters: Parameters used when you are using the rule to invoke Amazon EC2 Run Command. - :param 'RuleSageMakerPipelineParameters' sage_maker_pipeline_parameters: Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + :param 'RuleSageMakerPipelineParameters' sage_maker_pipeline_parameters: Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. - If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. :param 'RuleSqsParameters' sqs_parameters: Contains the message group ID to use when the target is a FIFO queue. If you specify an SQS FIFO queue as a target, the queue must have content-based deduplication enabled. @@ -2253,9 +2253,9 @@ def run_command_parameters(self) -> Optional['outputs.RuleRunCommandParameters'] @pulumi.getter(name="sageMakerPipelineParameters") def sage_maker_pipeline_parameters(self) -> Optional['outputs.RuleSageMakerPipelineParameters']: """ - Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline. + Contains the SageMaker AI Model Building Pipeline parameters to start execution of a SageMaker AI Model Building Pipeline. - If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. + If you specify a SageMaker AI Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events. """ return pulumi.get(self, "sage_maker_pipeline_parameters") diff --git a/sdk/python/pulumi_aws_native/fis/_inputs.py b/sdk/python/pulumi_aws_native/fis/_inputs.py index 6abd057123..ad497fddff 100644 --- a/sdk/python/pulumi_aws_native/fis/_inputs.py +++ b/sdk/python/pulumi_aws_native/fis/_inputs.py @@ -338,14 +338,14 @@ def experiment_report_s3_configuration(self, value: pulumi.Input['ExperimentTemp if not MYPY: class ExperimentTemplateExperimentReportConfigurationArgsDict(TypedDict): - data_sources: pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgsDict'] - """ - The data sources for the experiment report. - """ outputs: pulumi.Input['ExperimentTemplateExperimentReportConfigurationOutputsPropertiesArgsDict'] """ The output destinations of the experiment report. """ + data_sources: NotRequired[pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgsDict']] + """ + The data sources for the experiment report. + """ post_experiment_duration: NotRequired[pulumi.Input[str]] """ The duration after the experiment end time for the data sources to include in the report. @@ -360,35 +360,24 @@ class ExperimentTemplateExperimentReportConfigurationArgsDict(TypedDict): @pulumi.input_type class ExperimentTemplateExperimentReportConfigurationArgs: def __init__(__self__, *, - data_sources: pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs'], outputs: pulumi.Input['ExperimentTemplateExperimentReportConfigurationOutputsPropertiesArgs'], + data_sources: Optional[pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs']] = None, post_experiment_duration: Optional[pulumi.Input[str]] = None, pre_experiment_duration: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs'] data_sources: The data sources for the experiment report. :param pulumi.Input['ExperimentTemplateExperimentReportConfigurationOutputsPropertiesArgs'] outputs: The output destinations of the experiment report. + :param pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs'] data_sources: The data sources for the experiment report. :param pulumi.Input[str] post_experiment_duration: The duration after the experiment end time for the data sources to include in the report. :param pulumi.Input[str] pre_experiment_duration: The duration before the experiment start time for the data sources to include in the report. """ - pulumi.set(__self__, "data_sources", data_sources) pulumi.set(__self__, "outputs", outputs) + if data_sources is not None: + pulumi.set(__self__, "data_sources", data_sources) if post_experiment_duration is not None: pulumi.set(__self__, "post_experiment_duration", post_experiment_duration) if pre_experiment_duration is not None: pulumi.set(__self__, "pre_experiment_duration", pre_experiment_duration) - @property - @pulumi.getter(name="dataSources") - def data_sources(self) -> pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs']: - """ - The data sources for the experiment report. - """ - return pulumi.get(self, "data_sources") - - @data_sources.setter - def data_sources(self, value: pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs']): - pulumi.set(self, "data_sources", value) - @property @pulumi.getter def outputs(self) -> pulumi.Input['ExperimentTemplateExperimentReportConfigurationOutputsPropertiesArgs']: @@ -401,6 +390,18 @@ def outputs(self) -> pulumi.Input['ExperimentTemplateExperimentReportConfigurati def outputs(self, value: pulumi.Input['ExperimentTemplateExperimentReportConfigurationOutputsPropertiesArgs']): pulumi.set(self, "outputs", value) + @property + @pulumi.getter(name="dataSources") + def data_sources(self) -> Optional[pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs']]: + """ + The data sources for the experiment report. + """ + return pulumi.get(self, "data_sources") + + @data_sources.setter + def data_sources(self, value: Optional[pulumi.Input['ExperimentTemplateExperimentReportConfigurationDataSourcesPropertiesArgs']]): + pulumi.set(self, "data_sources", value) + @property @pulumi.getter(name="postExperimentDuration") def post_experiment_duration(self) -> Optional[pulumi.Input[str]]: diff --git a/sdk/python/pulumi_aws_native/fis/outputs.py b/sdk/python/pulumi_aws_native/fis/outputs.py index 5068186185..a106861b8e 100644 --- a/sdk/python/pulumi_aws_native/fis/outputs.py +++ b/sdk/python/pulumi_aws_native/fis/outputs.py @@ -230,31 +230,24 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - data_sources: 'outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties', outputs: 'outputs.ExperimentTemplateExperimentReportConfigurationOutputsProperties', + data_sources: Optional['outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties'] = None, post_experiment_duration: Optional[str] = None, pre_experiment_duration: Optional[str] = None): """ - :param 'ExperimentTemplateExperimentReportConfigurationDataSourcesProperties' data_sources: The data sources for the experiment report. :param 'ExperimentTemplateExperimentReportConfigurationOutputsProperties' outputs: The output destinations of the experiment report. + :param 'ExperimentTemplateExperimentReportConfigurationDataSourcesProperties' data_sources: The data sources for the experiment report. :param str post_experiment_duration: The duration after the experiment end time for the data sources to include in the report. :param str pre_experiment_duration: The duration before the experiment start time for the data sources to include in the report. """ - pulumi.set(__self__, "data_sources", data_sources) pulumi.set(__self__, "outputs", outputs) + if data_sources is not None: + pulumi.set(__self__, "data_sources", data_sources) if post_experiment_duration is not None: pulumi.set(__self__, "post_experiment_duration", post_experiment_duration) if pre_experiment_duration is not None: pulumi.set(__self__, "pre_experiment_duration", pre_experiment_duration) - @property - @pulumi.getter(name="dataSources") - def data_sources(self) -> 'outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties': - """ - The data sources for the experiment report. - """ - return pulumi.get(self, "data_sources") - @property @pulumi.getter def outputs(self) -> 'outputs.ExperimentTemplateExperimentReportConfigurationOutputsProperties': @@ -263,6 +256,14 @@ def outputs(self) -> 'outputs.ExperimentTemplateExperimentReportConfigurationOut """ return pulumi.get(self, "outputs") + @property + @pulumi.getter(name="dataSources") + def data_sources(self) -> Optional['outputs.ExperimentTemplateExperimentReportConfigurationDataSourcesProperties']: + """ + The data sources for the experiment report. + """ + return pulumi.get(self, "data_sources") + @property @pulumi.getter(name="postExperimentDuration") def post_experiment_duration(self) -> Optional[str]: diff --git a/sdk/python/pulumi_aws_native/logs/__init__.py b/sdk/python/pulumi_aws_native/logs/__init__.py index 03a667bfe6..41ffd3e5ad 100644 --- a/sdk/python/pulumi_aws_native/logs/__init__.py +++ b/sdk/python/pulumi_aws_native/logs/__init__.py @@ -23,6 +23,7 @@ from .get_query_definition import * from .get_resource_policy import * from .get_subscription_filter import * +from .get_transformer import * from .integration import * from .log_anomaly_detector import * from .log_group import * @@ -31,5 +32,6 @@ from .query_definition import * from .resource_policy import * from .subscription_filter import * +from .transformer import * from ._inputs import * from . import outputs diff --git a/sdk/python/pulumi_aws_native/logs/_enums.py b/sdk/python/pulumi_aws_native/logs/_enums.py index db97b4fbcb..3291d1161a 100644 --- a/sdk/python/pulumi_aws_native/logs/_enums.py +++ b/sdk/python/pulumi_aws_native/logs/_enums.py @@ -12,7 +12,10 @@ 'LogAnomalyDetectorEvaluationFrequency', 'LogGroupClass', 'MetricFilterMetricTransformationUnit', + 'QueryDefinitionQueryLanguage', 'SubscriptionFilterDistribution', + 'TransformerProcessorListToMapPropertiesFlattenedElement', + 'TransformerTypeConverterEntryType', ] @@ -103,9 +106,30 @@ class MetricFilterMetricTransformationUnit(str, Enum): NONE = "None" +class QueryDefinitionQueryLanguage(str, Enum): + """ + Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + """ + CWLI = "CWLI" + SQL = "SQL" + PPL = "PPL" + + class SubscriptionFilterDistribution(str, Enum): """ The method used to distribute log data to the destination, which can be either random or grouped by log stream. """ RANDOM = "Random" BY_LOG_STREAM = "ByLogStream" + + +class TransformerProcessorListToMapPropertiesFlattenedElement(str, Enum): + FIRST = "first" + LAST = "last" + + +class TransformerTypeConverterEntryType(str, Enum): + BOOLEAN = "boolean" + INTEGER = "integer" + DOUBLE = "double" + STRING = "string" diff --git a/sdk/python/pulumi_aws_native/logs/_inputs.py b/sdk/python/pulumi_aws_native/logs/_inputs.py index f3fd4ca971..4111344e54 100644 --- a/sdk/python/pulumi_aws_native/logs/_inputs.py +++ b/sdk/python/pulumi_aws_native/logs/_inputs.py @@ -26,6 +26,66 @@ 'MetricFilterMetricTransformationArgsDict', 'ResourceConfigPropertiesArgs', 'ResourceConfigPropertiesArgsDict', + 'TransformerAddKeyEntryArgs', + 'TransformerAddKeyEntryArgsDict', + 'TransformerCopyValueEntryArgs', + 'TransformerCopyValueEntryArgsDict', + 'TransformerMoveKeyEntryArgs', + 'TransformerMoveKeyEntryArgsDict', + 'TransformerParseCloudfrontArgs', + 'TransformerParseCloudfrontArgsDict', + 'TransformerParsePostgresArgs', + 'TransformerParsePostgresArgsDict', + 'TransformerParseRoute53Args', + 'TransformerParseRoute53ArgsDict', + 'TransformerParseVpcArgs', + 'TransformerParseVpcArgsDict', + 'TransformerParseWafArgs', + 'TransformerParseWafArgsDict', + 'TransformerProcessorAddKeysPropertiesArgs', + 'TransformerProcessorAddKeysPropertiesArgsDict', + 'TransformerProcessorCopyValuePropertiesArgs', + 'TransformerProcessorCopyValuePropertiesArgsDict', + 'TransformerProcessorCsvPropertiesArgs', + 'TransformerProcessorCsvPropertiesArgsDict', + 'TransformerProcessorDateTimeConverterPropertiesArgs', + 'TransformerProcessorDateTimeConverterPropertiesArgsDict', + 'TransformerProcessorDeleteKeysPropertiesArgs', + 'TransformerProcessorDeleteKeysPropertiesArgsDict', + 'TransformerProcessorGrokPropertiesArgs', + 'TransformerProcessorGrokPropertiesArgsDict', + 'TransformerProcessorListToMapPropertiesArgs', + 'TransformerProcessorListToMapPropertiesArgsDict', + 'TransformerProcessorLowerCaseStringPropertiesArgs', + 'TransformerProcessorLowerCaseStringPropertiesArgsDict', + 'TransformerProcessorMoveKeysPropertiesArgs', + 'TransformerProcessorMoveKeysPropertiesArgsDict', + 'TransformerProcessorParseJsonPropertiesArgs', + 'TransformerProcessorParseJsonPropertiesArgsDict', + 'TransformerProcessorParseKeyValuePropertiesArgs', + 'TransformerProcessorParseKeyValuePropertiesArgsDict', + 'TransformerProcessorRenameKeysPropertiesArgs', + 'TransformerProcessorRenameKeysPropertiesArgsDict', + 'TransformerProcessorSplitStringPropertiesArgs', + 'TransformerProcessorSplitStringPropertiesArgsDict', + 'TransformerProcessorSubstituteStringPropertiesArgs', + 'TransformerProcessorSubstituteStringPropertiesArgsDict', + 'TransformerProcessorTrimStringPropertiesArgs', + 'TransformerProcessorTrimStringPropertiesArgsDict', + 'TransformerProcessorTypeConverterPropertiesArgs', + 'TransformerProcessorTypeConverterPropertiesArgsDict', + 'TransformerProcessorUpperCaseStringPropertiesArgs', + 'TransformerProcessorUpperCaseStringPropertiesArgsDict', + 'TransformerProcessorArgs', + 'TransformerProcessorArgsDict', + 'TransformerRenameKeyEntryArgs', + 'TransformerRenameKeyEntryArgsDict', + 'TransformerSplitStringEntryArgs', + 'TransformerSplitStringEntryArgsDict', + 'TransformerSubstituteStringEntryArgs', + 'TransformerSubstituteStringEntryArgsDict', + 'TransformerTypeConverterEntryArgs', + 'TransformerTypeConverterEntryArgsDict', ] MYPY = False @@ -441,3 +501,1736 @@ def open_search_resource_config(self, value: Optional[pulumi.Input['IntegrationO pulumi.set(self, "open_search_resource_config", value) +if not MYPY: + class TransformerAddKeyEntryArgsDict(TypedDict): + key: pulumi.Input[str] + """ + The key of the new entry to be added to the log event + """ + value: pulumi.Input[str] + """ + The value of the new entry to be added to the log event + """ + overwrite_if_exists: NotRequired[pulumi.Input[bool]] + """ + Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + """ +elif False: + TransformerAddKeyEntryArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerAddKeyEntryArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str], + overwrite_if_exists: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[str] key: The key of the new entry to be added to the log event + :param pulumi.Input[str] value: The value of the new entry to be added to the log event + :param pulumi.Input[bool] overwrite_if_exists: Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + """ + The key of the new entry to be added to the log event + """ + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + """ + The value of the new entry to be added to the log event + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[pulumi.Input[bool]]: + """ + Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + """ + return pulumi.get(self, "overwrite_if_exists") + + @overwrite_if_exists.setter + def overwrite_if_exists(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "overwrite_if_exists", value) + + +if not MYPY: + class TransformerCopyValueEntryArgsDict(TypedDict): + source: pulumi.Input[str] + target: pulumi.Input[str] + overwrite_if_exists: NotRequired[pulumi.Input[bool]] +elif False: + TransformerCopyValueEntryArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerCopyValueEntryArgs: + def __init__(__self__, *, + source: pulumi.Input[str], + target: pulumi.Input[str], + overwrite_if_exists: Optional[pulumi.Input[bool]] = None): + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "target", target) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def source(self) -> pulumi.Input[str]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: pulumi.Input[str]): + pulumi.set(self, "source", value) + + @property + @pulumi.getter + def target(self) -> pulumi.Input[str]: + return pulumi.get(self, "target") + + @target.setter + def target(self, value: pulumi.Input[str]): + pulumi.set(self, "target", value) + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "overwrite_if_exists") + + @overwrite_if_exists.setter + def overwrite_if_exists(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "overwrite_if_exists", value) + + +if not MYPY: + class TransformerMoveKeyEntryArgsDict(TypedDict): + source: pulumi.Input[str] + target: pulumi.Input[str] + overwrite_if_exists: NotRequired[pulumi.Input[bool]] +elif False: + TransformerMoveKeyEntryArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerMoveKeyEntryArgs: + def __init__(__self__, *, + source: pulumi.Input[str], + target: pulumi.Input[str], + overwrite_if_exists: Optional[pulumi.Input[bool]] = None): + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "target", target) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def source(self) -> pulumi.Input[str]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: pulumi.Input[str]): + pulumi.set(self, "source", value) + + @property + @pulumi.getter + def target(self) -> pulumi.Input[str]: + return pulumi.get(self, "target") + + @target.setter + def target(self, value: pulumi.Input[str]): + pulumi.set(self, "target", value) + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "overwrite_if_exists") + + @overwrite_if_exists.setter + def overwrite_if_exists(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "overwrite_if_exists", value) + + +if not MYPY: + class TransformerParseCloudfrontArgsDict(TypedDict): + source: NotRequired[pulumi.Input[str]] + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ +elif False: + TransformerParseCloudfrontArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerParseCloudfrontArgs: + def __init__(__self__, *, + source: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerParsePostgresArgsDict(TypedDict): + source: NotRequired[pulumi.Input[str]] + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ +elif False: + TransformerParsePostgresArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerParsePostgresArgs: + def __init__(__self__, *, + source: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerParseRoute53ArgsDict(TypedDict): + source: NotRequired[pulumi.Input[str]] + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ +elif False: + TransformerParseRoute53ArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerParseRoute53Args: + def __init__(__self__, *, + source: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerParseVpcArgsDict(TypedDict): + source: NotRequired[pulumi.Input[str]] + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ +elif False: + TransformerParseVpcArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerParseVpcArgs: + def __init__(__self__, *, + source: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerParseWafArgsDict(TypedDict): + source: NotRequired[pulumi.Input[str]] + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ +elif False: + TransformerParseWafArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerParseWafArgs: + def __init__(__self__, *, + source: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerProcessorAddKeysPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + """ + entries: pulumi.Input[Sequence[pulumi.Input['TransformerAddKeyEntryArgsDict']]] +elif False: + TransformerProcessorAddKeysPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorAddKeysPropertiesArgs: + def __init__(__self__, *, + entries: pulumi.Input[Sequence[pulumi.Input['TransformerAddKeyEntryArgs']]]): + """ + Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerAddKeyEntryArgs']]]: + return pulumi.get(self, "entries") + + @entries.setter + def entries(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerAddKeyEntryArgs']]]): + pulumi.set(self, "entries", value) + + +if not MYPY: + class TransformerProcessorCopyValuePropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + """ + entries: pulumi.Input[Sequence[pulumi.Input['TransformerCopyValueEntryArgsDict']]] +elif False: + TransformerProcessorCopyValuePropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorCopyValuePropertiesArgs: + def __init__(__self__, *, + entries: pulumi.Input[Sequence[pulumi.Input['TransformerCopyValueEntryArgs']]]): + """ + Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerCopyValueEntryArgs']]]: + return pulumi.get(self, "entries") + + @entries.setter + def entries(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerCopyValueEntryArgs']]]): + pulumi.set(self, "entries", value) + + +if not MYPY: + class TransformerProcessorCsvPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + """ + columns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + delimiter: NotRequired[pulumi.Input[str]] + quote_character: NotRequired[pulumi.Input[str]] + source: NotRequired[pulumi.Input[str]] +elif False: + TransformerProcessorCsvPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorCsvPropertiesArgs: + def __init__(__self__, *, + columns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + delimiter: Optional[pulumi.Input[str]] = None, + quote_character: Optional[pulumi.Input[str]] = None, + source: Optional[pulumi.Input[str]] = None): + """ + Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + """ + if columns is not None: + pulumi.set(__self__, "columns", columns) + if delimiter is not None: + pulumi.set(__self__, "delimiter", delimiter) + if quote_character is not None: + pulumi.set(__self__, "quote_character", quote_character) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def columns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "columns") + + @columns.setter + def columns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "columns", value) + + @property + @pulumi.getter + def delimiter(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "delimiter") + + @delimiter.setter + def delimiter(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delimiter", value) + + @property + @pulumi.getter(name="quoteCharacter") + def quote_character(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "quote_character") + + @quote_character.setter + def quote_character(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "quote_character", value) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerProcessorDateTimeConverterPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + """ + match_patterns: pulumi.Input[Sequence[pulumi.Input[str]]] + source: pulumi.Input[str] + target: pulumi.Input[str] + locale: NotRequired[pulumi.Input[str]] + source_timezone: NotRequired[pulumi.Input[str]] + target_format: NotRequired[pulumi.Input[str]] + target_timezone: NotRequired[pulumi.Input[str]] +elif False: + TransformerProcessorDateTimeConverterPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorDateTimeConverterPropertiesArgs: + def __init__(__self__, *, + match_patterns: pulumi.Input[Sequence[pulumi.Input[str]]], + source: pulumi.Input[str], + target: pulumi.Input[str], + locale: Optional[pulumi.Input[str]] = None, + source_timezone: Optional[pulumi.Input[str]] = None, + target_format: Optional[pulumi.Input[str]] = None, + target_timezone: Optional[pulumi.Input[str]] = None): + """ + Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + """ + pulumi.set(__self__, "match_patterns", match_patterns) + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "target", target) + if locale is not None: + pulumi.set(__self__, "locale", locale) + if source_timezone is not None: + pulumi.set(__self__, "source_timezone", source_timezone) + if target_format is not None: + pulumi.set(__self__, "target_format", target_format) + if target_timezone is not None: + pulumi.set(__self__, "target_timezone", target_timezone) + + @property + @pulumi.getter(name="matchPatterns") + def match_patterns(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "match_patterns") + + @match_patterns.setter + def match_patterns(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "match_patterns", value) + + @property + @pulumi.getter + def source(self) -> pulumi.Input[str]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: pulumi.Input[str]): + pulumi.set(self, "source", value) + + @property + @pulumi.getter + def target(self) -> pulumi.Input[str]: + return pulumi.get(self, "target") + + @target.setter + def target(self, value: pulumi.Input[str]): + pulumi.set(self, "target", value) + + @property + @pulumi.getter + def locale(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "locale") + + @locale.setter + def locale(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "locale", value) + + @property + @pulumi.getter(name="sourceTimezone") + def source_timezone(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "source_timezone") + + @source_timezone.setter + def source_timezone(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_timezone", value) + + @property + @pulumi.getter(name="targetFormat") + def target_format(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "target_format") + + @target_format.setter + def target_format(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "target_format", value) + + @property + @pulumi.getter(name="targetTimezone") + def target_timezone(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "target_timezone") + + @target_timezone.setter + def target_timezone(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "target_timezone", value) + + +if not MYPY: + class TransformerProcessorDeleteKeysPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + """ + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]] +elif False: + TransformerProcessorDeleteKeysPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorDeleteKeysPropertiesArgs: + def __init__(__self__, *, + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]]): + """ + Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "with_keys") + + @with_keys.setter + def with_keys(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "with_keys", value) + + +if not MYPY: + class TransformerProcessorGrokPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + """ + match: pulumi.Input[str] + source: NotRequired[pulumi.Input[str]] +elif False: + TransformerProcessorGrokPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorGrokPropertiesArgs: + def __init__(__self__, *, + match: pulumi.Input[str], + source: Optional[pulumi.Input[str]] = None): + """ + Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + """ + pulumi.set(__self__, "match", match) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def match(self) -> pulumi.Input[str]: + return pulumi.get(self, "match") + + @match.setter + def match(self, value: pulumi.Input[str]): + pulumi.set(self, "match", value) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerProcessorListToMapPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + """ + key: pulumi.Input[str] + source: pulumi.Input[str] + flatten: NotRequired[pulumi.Input[bool]] + flattened_element: NotRequired[pulumi.Input['TransformerProcessorListToMapPropertiesFlattenedElement']] + target: NotRequired[pulumi.Input[str]] + value_key: NotRequired[pulumi.Input[str]] +elif False: + TransformerProcessorListToMapPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorListToMapPropertiesArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + source: pulumi.Input[str], + flatten: Optional[pulumi.Input[bool]] = None, + flattened_element: Optional[pulumi.Input['TransformerProcessorListToMapPropertiesFlattenedElement']] = None, + target: Optional[pulumi.Input[str]] = None, + value_key: Optional[pulumi.Input[str]] = None): + """ + Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "source", source) + if flatten is not None: + pulumi.set(__self__, "flatten", flatten) + if flattened_element is not None: + pulumi.set(__self__, "flattened_element", flattened_element) + if target is not None: + pulumi.set(__self__, "target", target) + if value_key is not None: + pulumi.set(__self__, "value_key", value_key) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def source(self) -> pulumi.Input[str]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: pulumi.Input[str]): + pulumi.set(self, "source", value) + + @property + @pulumi.getter + def flatten(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "flatten") + + @flatten.setter + def flatten(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "flatten", value) + + @property + @pulumi.getter(name="flattenedElement") + def flattened_element(self) -> Optional[pulumi.Input['TransformerProcessorListToMapPropertiesFlattenedElement']]: + return pulumi.get(self, "flattened_element") + + @flattened_element.setter + def flattened_element(self, value: Optional[pulumi.Input['TransformerProcessorListToMapPropertiesFlattenedElement']]): + pulumi.set(self, "flattened_element", value) + + @property + @pulumi.getter + def target(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "target") + + @target.setter + def target(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "target", value) + + @property + @pulumi.getter(name="valueKey") + def value_key(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "value_key") + + @value_key.setter + def value_key(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "value_key", value) + + +if not MYPY: + class TransformerProcessorLowerCaseStringPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + """ + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]] +elif False: + TransformerProcessorLowerCaseStringPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorLowerCaseStringPropertiesArgs: + def __init__(__self__, *, + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]]): + """ + Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "with_keys") + + @with_keys.setter + def with_keys(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "with_keys", value) + + +if not MYPY: + class TransformerProcessorMoveKeysPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + """ + entries: pulumi.Input[Sequence[pulumi.Input['TransformerMoveKeyEntryArgsDict']]] +elif False: + TransformerProcessorMoveKeysPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorMoveKeysPropertiesArgs: + def __init__(__self__, *, + entries: pulumi.Input[Sequence[pulumi.Input['TransformerMoveKeyEntryArgs']]]): + """ + Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerMoveKeyEntryArgs']]]: + return pulumi.get(self, "entries") + + @entries.setter + def entries(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerMoveKeyEntryArgs']]]): + pulumi.set(self, "entries", value) + + +if not MYPY: + class TransformerProcessorParseJsonPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + """ + destination: NotRequired[pulumi.Input[str]] + source: NotRequired[pulumi.Input[str]] +elif False: + TransformerProcessorParseJsonPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorParseJsonPropertiesArgs: + def __init__(__self__, *, + destination: Optional[pulumi.Input[str]] = None, + source: Optional[pulumi.Input[str]] = None): + """ + Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + """ + if destination is not None: + pulumi.set(__self__, "destination", destination) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def destination(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "destination") + + @destination.setter + def destination(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "destination", value) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerProcessorParseKeyValuePropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + """ + destination: NotRequired[pulumi.Input[str]] + field_delimiter: NotRequired[pulumi.Input[str]] + key_prefix: NotRequired[pulumi.Input[str]] + key_value_delimiter: NotRequired[pulumi.Input[str]] + non_match_value: NotRequired[pulumi.Input[str]] + overwrite_if_exists: NotRequired[pulumi.Input[bool]] + source: NotRequired[pulumi.Input[str]] +elif False: + TransformerProcessorParseKeyValuePropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorParseKeyValuePropertiesArgs: + def __init__(__self__, *, + destination: Optional[pulumi.Input[str]] = None, + field_delimiter: Optional[pulumi.Input[str]] = None, + key_prefix: Optional[pulumi.Input[str]] = None, + key_value_delimiter: Optional[pulumi.Input[str]] = None, + non_match_value: Optional[pulumi.Input[str]] = None, + overwrite_if_exists: Optional[pulumi.Input[bool]] = None, + source: Optional[pulumi.Input[str]] = None): + """ + Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + """ + if destination is not None: + pulumi.set(__self__, "destination", destination) + if field_delimiter is not None: + pulumi.set(__self__, "field_delimiter", field_delimiter) + if key_prefix is not None: + pulumi.set(__self__, "key_prefix", key_prefix) + if key_value_delimiter is not None: + pulumi.set(__self__, "key_value_delimiter", key_value_delimiter) + if non_match_value is not None: + pulumi.set(__self__, "non_match_value", non_match_value) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def destination(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "destination") + + @destination.setter + def destination(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "destination", value) + + @property + @pulumi.getter(name="fieldDelimiter") + def field_delimiter(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "field_delimiter") + + @field_delimiter.setter + def field_delimiter(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "field_delimiter", value) + + @property + @pulumi.getter(name="keyPrefix") + def key_prefix(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "key_prefix") + + @key_prefix.setter + def key_prefix(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "key_prefix", value) + + @property + @pulumi.getter(name="keyValueDelimiter") + def key_value_delimiter(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "key_value_delimiter") + + @key_value_delimiter.setter + def key_value_delimiter(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "key_value_delimiter", value) + + @property + @pulumi.getter(name="nonMatchValue") + def non_match_value(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "non_match_value") + + @non_match_value.setter + def non_match_value(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "non_match_value", value) + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "overwrite_if_exists") + + @overwrite_if_exists.setter + def overwrite_if_exists(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "overwrite_if_exists", value) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerProcessorRenameKeysPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + """ + entries: pulumi.Input[Sequence[pulumi.Input['TransformerRenameKeyEntryArgsDict']]] +elif False: + TransformerProcessorRenameKeysPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorRenameKeysPropertiesArgs: + def __init__(__self__, *, + entries: pulumi.Input[Sequence[pulumi.Input['TransformerRenameKeyEntryArgs']]]): + """ + Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerRenameKeyEntryArgs']]]: + return pulumi.get(self, "entries") + + @entries.setter + def entries(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerRenameKeyEntryArgs']]]): + pulumi.set(self, "entries", value) + + +if not MYPY: + class TransformerProcessorSplitStringPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + """ + entries: pulumi.Input[Sequence[pulumi.Input['TransformerSplitStringEntryArgsDict']]] +elif False: + TransformerProcessorSplitStringPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorSplitStringPropertiesArgs: + def __init__(__self__, *, + entries: pulumi.Input[Sequence[pulumi.Input['TransformerSplitStringEntryArgs']]]): + """ + Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerSplitStringEntryArgs']]]: + return pulumi.get(self, "entries") + + @entries.setter + def entries(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerSplitStringEntryArgs']]]): + pulumi.set(self, "entries", value) + + +if not MYPY: + class TransformerProcessorSubstituteStringPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + """ + entries: pulumi.Input[Sequence[pulumi.Input['TransformerSubstituteStringEntryArgsDict']]] +elif False: + TransformerProcessorSubstituteStringPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorSubstituteStringPropertiesArgs: + def __init__(__self__, *, + entries: pulumi.Input[Sequence[pulumi.Input['TransformerSubstituteStringEntryArgs']]]): + """ + Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerSubstituteStringEntryArgs']]]: + return pulumi.get(self, "entries") + + @entries.setter + def entries(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerSubstituteStringEntryArgs']]]): + pulumi.set(self, "entries", value) + + +if not MYPY: + class TransformerProcessorTrimStringPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + """ + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]] +elif False: + TransformerProcessorTrimStringPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorTrimStringPropertiesArgs: + def __init__(__self__, *, + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]]): + """ + Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "with_keys") + + @with_keys.setter + def with_keys(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "with_keys", value) + + +if not MYPY: + class TransformerProcessorTypeConverterPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + """ + entries: pulumi.Input[Sequence[pulumi.Input['TransformerTypeConverterEntryArgsDict']]] +elif False: + TransformerProcessorTypeConverterPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorTypeConverterPropertiesArgs: + def __init__(__self__, *, + entries: pulumi.Input[Sequence[pulumi.Input['TransformerTypeConverterEntryArgs']]]): + """ + Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerTypeConverterEntryArgs']]]: + return pulumi.get(self, "entries") + + @entries.setter + def entries(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerTypeConverterEntryArgs']]]): + pulumi.set(self, "entries", value) + + +if not MYPY: + class TransformerProcessorUpperCaseStringPropertiesArgsDict(TypedDict): + """ + Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]] +elif False: + TransformerProcessorUpperCaseStringPropertiesArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorUpperCaseStringPropertiesArgs: + def __init__(__self__, *, + with_keys: pulumi.Input[Sequence[pulumi.Input[str]]]): + """ + Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "with_keys") + + @with_keys.setter + def with_keys(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "with_keys", value) + + +if not MYPY: + class TransformerProcessorArgsDict(TypedDict): + """ + Individual processor configuration + """ + add_keys: NotRequired[pulumi.Input['TransformerProcessorAddKeysPropertiesArgsDict']] + """ + Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + """ + copy_value: NotRequired[pulumi.Input['TransformerProcessorCopyValuePropertiesArgsDict']] + """ + Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + """ + csv: NotRequired[pulumi.Input['TransformerProcessorCsvPropertiesArgsDict']] + """ + Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + """ + date_time_converter: NotRequired[pulumi.Input['TransformerProcessorDateTimeConverterPropertiesArgsDict']] + """ + Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + """ + delete_keys: NotRequired[pulumi.Input['TransformerProcessorDeleteKeysPropertiesArgsDict']] + """ + Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + """ + grok: NotRequired[pulumi.Input['TransformerProcessorGrokPropertiesArgsDict']] + """ + Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + """ + list_to_map: NotRequired[pulumi.Input['TransformerProcessorListToMapPropertiesArgsDict']] + """ + Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + """ + lower_case_string: NotRequired[pulumi.Input['TransformerProcessorLowerCaseStringPropertiesArgsDict']] + """ + Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + """ + move_keys: NotRequired[pulumi.Input['TransformerProcessorMoveKeysPropertiesArgsDict']] + """ + Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + """ + parse_cloudfront: NotRequired[pulumi.Input['TransformerParseCloudfrontArgsDict']] + """ + Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + parse_json: NotRequired[pulumi.Input['TransformerProcessorParseJsonPropertiesArgsDict']] + """ + Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + """ + parse_key_value: NotRequired[pulumi.Input['TransformerProcessorParseKeyValuePropertiesArgsDict']] + """ + Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + """ + parse_postgres: NotRequired[pulumi.Input['TransformerParsePostgresArgsDict']] + """ + Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + parse_route53: NotRequired[pulumi.Input['TransformerParseRoute53ArgsDict']] + """ + Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + parse_vpc: NotRequired[pulumi.Input['TransformerParseVpcArgsDict']] + """ + Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + parse_waf: NotRequired[pulumi.Input['TransformerParseWafArgsDict']] + """ + Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + rename_keys: NotRequired[pulumi.Input['TransformerProcessorRenameKeysPropertiesArgsDict']] + """ + Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + """ + split_string: NotRequired[pulumi.Input['TransformerProcessorSplitStringPropertiesArgsDict']] + """ + Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + """ + substitute_string: NotRequired[pulumi.Input['TransformerProcessorSubstituteStringPropertiesArgsDict']] + """ + Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + """ + trim_string: NotRequired[pulumi.Input['TransformerProcessorTrimStringPropertiesArgsDict']] + """ + Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + """ + type_converter: NotRequired[pulumi.Input['TransformerProcessorTypeConverterPropertiesArgsDict']] + """ + Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + """ + upper_case_string: NotRequired[pulumi.Input['TransformerProcessorUpperCaseStringPropertiesArgsDict']] + """ + Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ +elif False: + TransformerProcessorArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerProcessorArgs: + def __init__(__self__, *, + add_keys: Optional[pulumi.Input['TransformerProcessorAddKeysPropertiesArgs']] = None, + copy_value: Optional[pulumi.Input['TransformerProcessorCopyValuePropertiesArgs']] = None, + csv: Optional[pulumi.Input['TransformerProcessorCsvPropertiesArgs']] = None, + date_time_converter: Optional[pulumi.Input['TransformerProcessorDateTimeConverterPropertiesArgs']] = None, + delete_keys: Optional[pulumi.Input['TransformerProcessorDeleteKeysPropertiesArgs']] = None, + grok: Optional[pulumi.Input['TransformerProcessorGrokPropertiesArgs']] = None, + list_to_map: Optional[pulumi.Input['TransformerProcessorListToMapPropertiesArgs']] = None, + lower_case_string: Optional[pulumi.Input['TransformerProcessorLowerCaseStringPropertiesArgs']] = None, + move_keys: Optional[pulumi.Input['TransformerProcessorMoveKeysPropertiesArgs']] = None, + parse_cloudfront: Optional[pulumi.Input['TransformerParseCloudfrontArgs']] = None, + parse_json: Optional[pulumi.Input['TransformerProcessorParseJsonPropertiesArgs']] = None, + parse_key_value: Optional[pulumi.Input['TransformerProcessorParseKeyValuePropertiesArgs']] = None, + parse_postgres: Optional[pulumi.Input['TransformerParsePostgresArgs']] = None, + parse_route53: Optional[pulumi.Input['TransformerParseRoute53Args']] = None, + parse_vpc: Optional[pulumi.Input['TransformerParseVpcArgs']] = None, + parse_waf: Optional[pulumi.Input['TransformerParseWafArgs']] = None, + rename_keys: Optional[pulumi.Input['TransformerProcessorRenameKeysPropertiesArgs']] = None, + split_string: Optional[pulumi.Input['TransformerProcessorSplitStringPropertiesArgs']] = None, + substitute_string: Optional[pulumi.Input['TransformerProcessorSubstituteStringPropertiesArgs']] = None, + trim_string: Optional[pulumi.Input['TransformerProcessorTrimStringPropertiesArgs']] = None, + type_converter: Optional[pulumi.Input['TransformerProcessorTypeConverterPropertiesArgs']] = None, + upper_case_string: Optional[pulumi.Input['TransformerProcessorUpperCaseStringPropertiesArgs']] = None): + """ + Individual processor configuration + :param pulumi.Input['TransformerProcessorAddKeysPropertiesArgs'] add_keys: Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + :param pulumi.Input['TransformerProcessorCopyValuePropertiesArgs'] copy_value: Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + :param pulumi.Input['TransformerProcessorCsvPropertiesArgs'] csv: Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + :param pulumi.Input['TransformerProcessorDateTimeConverterPropertiesArgs'] date_time_converter: Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + :param pulumi.Input['TransformerProcessorDeleteKeysPropertiesArgs'] delete_keys: Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + :param pulumi.Input['TransformerProcessorGrokPropertiesArgs'] grok: Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + :param pulumi.Input['TransformerProcessorListToMapPropertiesArgs'] list_to_map: Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + :param pulumi.Input['TransformerProcessorLowerCaseStringPropertiesArgs'] lower_case_string: Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + :param pulumi.Input['TransformerProcessorMoveKeysPropertiesArgs'] move_keys: Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + :param pulumi.Input['TransformerParseCloudfrontArgs'] parse_cloudfront: Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param pulumi.Input['TransformerProcessorParseJsonPropertiesArgs'] parse_json: Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + :param pulumi.Input['TransformerProcessorParseKeyValuePropertiesArgs'] parse_key_value: Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + :param pulumi.Input['TransformerParsePostgresArgs'] parse_postgres: Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param pulumi.Input['TransformerParseRoute53Args'] parse_route53: Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param pulumi.Input['TransformerParseVpcArgs'] parse_vpc: Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param pulumi.Input['TransformerParseWafArgs'] parse_waf: Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param pulumi.Input['TransformerProcessorRenameKeysPropertiesArgs'] rename_keys: Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + :param pulumi.Input['TransformerProcessorSplitStringPropertiesArgs'] split_string: Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + :param pulumi.Input['TransformerProcessorSubstituteStringPropertiesArgs'] substitute_string: Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + :param pulumi.Input['TransformerProcessorTrimStringPropertiesArgs'] trim_string: Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + :param pulumi.Input['TransformerProcessorTypeConverterPropertiesArgs'] type_converter: Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + :param pulumi.Input['TransformerProcessorUpperCaseStringPropertiesArgs'] upper_case_string: Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + if add_keys is not None: + pulumi.set(__self__, "add_keys", add_keys) + if copy_value is not None: + pulumi.set(__self__, "copy_value", copy_value) + if csv is not None: + pulumi.set(__self__, "csv", csv) + if date_time_converter is not None: + pulumi.set(__self__, "date_time_converter", date_time_converter) + if delete_keys is not None: + pulumi.set(__self__, "delete_keys", delete_keys) + if grok is not None: + pulumi.set(__self__, "grok", grok) + if list_to_map is not None: + pulumi.set(__self__, "list_to_map", list_to_map) + if lower_case_string is not None: + pulumi.set(__self__, "lower_case_string", lower_case_string) + if move_keys is not None: + pulumi.set(__self__, "move_keys", move_keys) + if parse_cloudfront is not None: + pulumi.set(__self__, "parse_cloudfront", parse_cloudfront) + if parse_json is not None: + pulumi.set(__self__, "parse_json", parse_json) + if parse_key_value is not None: + pulumi.set(__self__, "parse_key_value", parse_key_value) + if parse_postgres is not None: + pulumi.set(__self__, "parse_postgres", parse_postgres) + if parse_route53 is not None: + pulumi.set(__self__, "parse_route53", parse_route53) + if parse_vpc is not None: + pulumi.set(__self__, "parse_vpc", parse_vpc) + if parse_waf is not None: + pulumi.set(__self__, "parse_waf", parse_waf) + if rename_keys is not None: + pulumi.set(__self__, "rename_keys", rename_keys) + if split_string is not None: + pulumi.set(__self__, "split_string", split_string) + if substitute_string is not None: + pulumi.set(__self__, "substitute_string", substitute_string) + if trim_string is not None: + pulumi.set(__self__, "trim_string", trim_string) + if type_converter is not None: + pulumi.set(__self__, "type_converter", type_converter) + if upper_case_string is not None: + pulumi.set(__self__, "upper_case_string", upper_case_string) + + @property + @pulumi.getter(name="addKeys") + def add_keys(self) -> Optional[pulumi.Input['TransformerProcessorAddKeysPropertiesArgs']]: + """ + Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + """ + return pulumi.get(self, "add_keys") + + @add_keys.setter + def add_keys(self, value: Optional[pulumi.Input['TransformerProcessorAddKeysPropertiesArgs']]): + pulumi.set(self, "add_keys", value) + + @property + @pulumi.getter(name="copyValue") + def copy_value(self) -> Optional[pulumi.Input['TransformerProcessorCopyValuePropertiesArgs']]: + """ + Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + """ + return pulumi.get(self, "copy_value") + + @copy_value.setter + def copy_value(self, value: Optional[pulumi.Input['TransformerProcessorCopyValuePropertiesArgs']]): + pulumi.set(self, "copy_value", value) + + @property + @pulumi.getter + def csv(self) -> Optional[pulumi.Input['TransformerProcessorCsvPropertiesArgs']]: + """ + Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + """ + return pulumi.get(self, "csv") + + @csv.setter + def csv(self, value: Optional[pulumi.Input['TransformerProcessorCsvPropertiesArgs']]): + pulumi.set(self, "csv", value) + + @property + @pulumi.getter(name="dateTimeConverter") + def date_time_converter(self) -> Optional[pulumi.Input['TransformerProcessorDateTimeConverterPropertiesArgs']]: + """ + Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + """ + return pulumi.get(self, "date_time_converter") + + @date_time_converter.setter + def date_time_converter(self, value: Optional[pulumi.Input['TransformerProcessorDateTimeConverterPropertiesArgs']]): + pulumi.set(self, "date_time_converter", value) + + @property + @pulumi.getter(name="deleteKeys") + def delete_keys(self) -> Optional[pulumi.Input['TransformerProcessorDeleteKeysPropertiesArgs']]: + """ + Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + """ + return pulumi.get(self, "delete_keys") + + @delete_keys.setter + def delete_keys(self, value: Optional[pulumi.Input['TransformerProcessorDeleteKeysPropertiesArgs']]): + pulumi.set(self, "delete_keys", value) + + @property + @pulumi.getter + def grok(self) -> Optional[pulumi.Input['TransformerProcessorGrokPropertiesArgs']]: + """ + Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + """ + return pulumi.get(self, "grok") + + @grok.setter + def grok(self, value: Optional[pulumi.Input['TransformerProcessorGrokPropertiesArgs']]): + pulumi.set(self, "grok", value) + + @property + @pulumi.getter(name="listToMap") + def list_to_map(self) -> Optional[pulumi.Input['TransformerProcessorListToMapPropertiesArgs']]: + """ + Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + """ + return pulumi.get(self, "list_to_map") + + @list_to_map.setter + def list_to_map(self, value: Optional[pulumi.Input['TransformerProcessorListToMapPropertiesArgs']]): + pulumi.set(self, "list_to_map", value) + + @property + @pulumi.getter(name="lowerCaseString") + def lower_case_string(self) -> Optional[pulumi.Input['TransformerProcessorLowerCaseStringPropertiesArgs']]: + """ + Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + """ + return pulumi.get(self, "lower_case_string") + + @lower_case_string.setter + def lower_case_string(self, value: Optional[pulumi.Input['TransformerProcessorLowerCaseStringPropertiesArgs']]): + pulumi.set(self, "lower_case_string", value) + + @property + @pulumi.getter(name="moveKeys") + def move_keys(self) -> Optional[pulumi.Input['TransformerProcessorMoveKeysPropertiesArgs']]: + """ + Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + """ + return pulumi.get(self, "move_keys") + + @move_keys.setter + def move_keys(self, value: Optional[pulumi.Input['TransformerProcessorMoveKeysPropertiesArgs']]): + pulumi.set(self, "move_keys", value) + + @property + @pulumi.getter(name="parseCloudfront") + def parse_cloudfront(self) -> Optional[pulumi.Input['TransformerParseCloudfrontArgs']]: + """ + Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_cloudfront") + + @parse_cloudfront.setter + def parse_cloudfront(self, value: Optional[pulumi.Input['TransformerParseCloudfrontArgs']]): + pulumi.set(self, "parse_cloudfront", value) + + @property + @pulumi.getter(name="parseJson") + def parse_json(self) -> Optional[pulumi.Input['TransformerProcessorParseJsonPropertiesArgs']]: + """ + Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + """ + return pulumi.get(self, "parse_json") + + @parse_json.setter + def parse_json(self, value: Optional[pulumi.Input['TransformerProcessorParseJsonPropertiesArgs']]): + pulumi.set(self, "parse_json", value) + + @property + @pulumi.getter(name="parseKeyValue") + def parse_key_value(self) -> Optional[pulumi.Input['TransformerProcessorParseKeyValuePropertiesArgs']]: + """ + Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + """ + return pulumi.get(self, "parse_key_value") + + @parse_key_value.setter + def parse_key_value(self, value: Optional[pulumi.Input['TransformerProcessorParseKeyValuePropertiesArgs']]): + pulumi.set(self, "parse_key_value", value) + + @property + @pulumi.getter(name="parsePostgres") + def parse_postgres(self) -> Optional[pulumi.Input['TransformerParsePostgresArgs']]: + """ + Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_postgres") + + @parse_postgres.setter + def parse_postgres(self, value: Optional[pulumi.Input['TransformerParsePostgresArgs']]): + pulumi.set(self, "parse_postgres", value) + + @property + @pulumi.getter(name="parseRoute53") + def parse_route53(self) -> Optional[pulumi.Input['TransformerParseRoute53Args']]: + """ + Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_route53") + + @parse_route53.setter + def parse_route53(self, value: Optional[pulumi.Input['TransformerParseRoute53Args']]): + pulumi.set(self, "parse_route53", value) + + @property + @pulumi.getter(name="parseVpc") + def parse_vpc(self) -> Optional[pulumi.Input['TransformerParseVpcArgs']]: + """ + Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_vpc") + + @parse_vpc.setter + def parse_vpc(self, value: Optional[pulumi.Input['TransformerParseVpcArgs']]): + pulumi.set(self, "parse_vpc", value) + + @property + @pulumi.getter(name="parseWaf") + def parse_waf(self) -> Optional[pulumi.Input['TransformerParseWafArgs']]: + """ + Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_waf") + + @parse_waf.setter + def parse_waf(self, value: Optional[pulumi.Input['TransformerParseWafArgs']]): + pulumi.set(self, "parse_waf", value) + + @property + @pulumi.getter(name="renameKeys") + def rename_keys(self) -> Optional[pulumi.Input['TransformerProcessorRenameKeysPropertiesArgs']]: + """ + Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + """ + return pulumi.get(self, "rename_keys") + + @rename_keys.setter + def rename_keys(self, value: Optional[pulumi.Input['TransformerProcessorRenameKeysPropertiesArgs']]): + pulumi.set(self, "rename_keys", value) + + @property + @pulumi.getter(name="splitString") + def split_string(self) -> Optional[pulumi.Input['TransformerProcessorSplitStringPropertiesArgs']]: + """ + Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + """ + return pulumi.get(self, "split_string") + + @split_string.setter + def split_string(self, value: Optional[pulumi.Input['TransformerProcessorSplitStringPropertiesArgs']]): + pulumi.set(self, "split_string", value) + + @property + @pulumi.getter(name="substituteString") + def substitute_string(self) -> Optional[pulumi.Input['TransformerProcessorSubstituteStringPropertiesArgs']]: + """ + Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + """ + return pulumi.get(self, "substitute_string") + + @substitute_string.setter + def substitute_string(self, value: Optional[pulumi.Input['TransformerProcessorSubstituteStringPropertiesArgs']]): + pulumi.set(self, "substitute_string", value) + + @property + @pulumi.getter(name="trimString") + def trim_string(self) -> Optional[pulumi.Input['TransformerProcessorTrimStringPropertiesArgs']]: + """ + Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + """ + return pulumi.get(self, "trim_string") + + @trim_string.setter + def trim_string(self, value: Optional[pulumi.Input['TransformerProcessorTrimStringPropertiesArgs']]): + pulumi.set(self, "trim_string", value) + + @property + @pulumi.getter(name="typeConverter") + def type_converter(self) -> Optional[pulumi.Input['TransformerProcessorTypeConverterPropertiesArgs']]: + """ + Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + """ + return pulumi.get(self, "type_converter") + + @type_converter.setter + def type_converter(self, value: Optional[pulumi.Input['TransformerProcessorTypeConverterPropertiesArgs']]): + pulumi.set(self, "type_converter", value) + + @property + @pulumi.getter(name="upperCaseString") + def upper_case_string(self) -> Optional[pulumi.Input['TransformerProcessorUpperCaseStringPropertiesArgs']]: + """ + Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + return pulumi.get(self, "upper_case_string") + + @upper_case_string.setter + def upper_case_string(self, value: Optional[pulumi.Input['TransformerProcessorUpperCaseStringPropertiesArgs']]): + pulumi.set(self, "upper_case_string", value) + + +if not MYPY: + class TransformerRenameKeyEntryArgsDict(TypedDict): + key: pulumi.Input[str] + rename_to: pulumi.Input[str] + overwrite_if_exists: NotRequired[pulumi.Input[bool]] +elif False: + TransformerRenameKeyEntryArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerRenameKeyEntryArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + rename_to: pulumi.Input[str], + overwrite_if_exists: Optional[pulumi.Input[bool]] = None): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "rename_to", rename_to) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter(name="renameTo") + def rename_to(self) -> pulumi.Input[str]: + return pulumi.get(self, "rename_to") + + @rename_to.setter + def rename_to(self, value: pulumi.Input[str]): + pulumi.set(self, "rename_to", value) + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "overwrite_if_exists") + + @overwrite_if_exists.setter + def overwrite_if_exists(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "overwrite_if_exists", value) + + +if not MYPY: + class TransformerSplitStringEntryArgsDict(TypedDict): + delimiter: pulumi.Input[str] + source: pulumi.Input[str] +elif False: + TransformerSplitStringEntryArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerSplitStringEntryArgs: + def __init__(__self__, *, + delimiter: pulumi.Input[str], + source: pulumi.Input[str]): + pulumi.set(__self__, "delimiter", delimiter) + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def delimiter(self) -> pulumi.Input[str]: + return pulumi.get(self, "delimiter") + + @delimiter.setter + def delimiter(self, value: pulumi.Input[str]): + pulumi.set(self, "delimiter", value) + + @property + @pulumi.getter + def source(self) -> pulumi.Input[str]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: pulumi.Input[str]): + pulumi.set(self, "source", value) + + +if not MYPY: + class TransformerSubstituteStringEntryArgsDict(TypedDict): + from_: pulumi.Input[str] + source: pulumi.Input[str] + to: pulumi.Input[str] +elif False: + TransformerSubstituteStringEntryArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerSubstituteStringEntryArgs: + def __init__(__self__, *, + from_: pulumi.Input[str], + source: pulumi.Input[str], + to: pulumi.Input[str]): + pulumi.set(__self__, "from_", from_) + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "to", to) + + @property + @pulumi.getter(name="from") + def from_(self) -> pulumi.Input[str]: + return pulumi.get(self, "from_") + + @from_.setter + def from_(self, value: pulumi.Input[str]): + pulumi.set(self, "from_", value) + + @property + @pulumi.getter + def source(self) -> pulumi.Input[str]: + return pulumi.get(self, "source") + + @source.setter + def source(self, value: pulumi.Input[str]): + pulumi.set(self, "source", value) + + @property + @pulumi.getter + def to(self) -> pulumi.Input[str]: + return pulumi.get(self, "to") + + @to.setter + def to(self, value: pulumi.Input[str]): + pulumi.set(self, "to", value) + + +if not MYPY: + class TransformerTypeConverterEntryArgsDict(TypedDict): + key: pulumi.Input[str] + type: pulumi.Input['TransformerTypeConverterEntryType'] +elif False: + TransformerTypeConverterEntryArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class TransformerTypeConverterEntryArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + type: pulumi.Input['TransformerTypeConverterEntryType']): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def type(self) -> pulumi.Input['TransformerTypeConverterEntryType']: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input['TransformerTypeConverterEntryType']): + pulumi.set(self, "type", value) + + diff --git a/sdk/python/pulumi_aws_native/logs/get_log_group.py b/sdk/python/pulumi_aws_native/logs/get_log_group.py index e0c4d3894b..122da8e64b 100644 --- a/sdk/python/pulumi_aws_native/logs/get_log_group.py +++ b/sdk/python/pulumi_aws_native/logs/get_log_group.py @@ -25,13 +25,16 @@ @pulumi.output_type class GetLogGroupResult: - def __init__(__self__, arn=None, data_protection_policy=None, kms_key_id=None, log_group_class=None, retention_in_days=None, tags=None): + def __init__(__self__, arn=None, data_protection_policy=None, field_index_policies=None, kms_key_id=None, log_group_class=None, retention_in_days=None, tags=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) if data_protection_policy and not isinstance(data_protection_policy, dict): raise TypeError("Expected argument 'data_protection_policy' to be a dict") pulumi.set(__self__, "data_protection_policy", data_protection_policy) + if field_index_policies and not isinstance(field_index_policies, list): + raise TypeError("Expected argument 'field_index_policies' to be a list") + pulumi.set(__self__, "field_index_policies", field_index_policies) if kms_key_id and not isinstance(kms_key_id, str): raise TypeError("Expected argument 'kms_key_id' to be a str") pulumi.set(__self__, "kms_key_id", kms_key_id) @@ -64,6 +67,11 @@ def data_protection_policy(self) -> Optional[Any]: """ return pulumi.get(self, "data_protection_policy") + @property + @pulumi.getter(name="fieldIndexPolicies") + def field_index_policies(self) -> Optional[Sequence[Any]]: + return pulumi.get(self, "field_index_policies") + @property @pulumi.getter(name="kmsKeyId") def kms_key_id(self) -> Optional[str]: @@ -114,6 +122,7 @@ def __await__(self): return GetLogGroupResult( arn=self.arn, data_protection_policy=self.data_protection_policy, + field_index_policies=self.field_index_policies, kms_key_id=self.kms_key_id, log_group_class=self.log_group_class, retention_in_days=self.retention_in_days, @@ -140,6 +149,7 @@ def get_log_group(log_group_name: Optional[str] = None, return AwaitableGetLogGroupResult( arn=pulumi.get(__ret__, 'arn'), data_protection_policy=pulumi.get(__ret__, 'data_protection_policy'), + field_index_policies=pulumi.get(__ret__, 'field_index_policies'), kms_key_id=pulumi.get(__ret__, 'kms_key_id'), log_group_class=pulumi.get(__ret__, 'log_group_class'), retention_in_days=pulumi.get(__ret__, 'retention_in_days'), @@ -163,6 +173,7 @@ def get_log_group_output(log_group_name: Optional[pulumi.Input[str]] = None, return __ret__.apply(lambda __response__: GetLogGroupResult( arn=pulumi.get(__response__, 'arn'), data_protection_policy=pulumi.get(__response__, 'data_protection_policy'), + field_index_policies=pulumi.get(__response__, 'field_index_policies'), kms_key_id=pulumi.get(__response__, 'kms_key_id'), log_group_class=pulumi.get(__response__, 'log_group_class'), retention_in_days=pulumi.get(__response__, 'retention_in_days'), diff --git a/sdk/python/pulumi_aws_native/logs/get_metric_filter.py b/sdk/python/pulumi_aws_native/logs/get_metric_filter.py index 621260118b..14331a7b1c 100644 --- a/sdk/python/pulumi_aws_native/logs/get_metric_filter.py +++ b/sdk/python/pulumi_aws_native/logs/get_metric_filter.py @@ -25,7 +25,10 @@ @pulumi.output_type class GetMetricFilterResult: - def __init__(__self__, filter_pattern=None, metric_transformations=None): + def __init__(__self__, apply_on_transformed_logs=None, filter_pattern=None, metric_transformations=None): + if apply_on_transformed_logs and not isinstance(apply_on_transformed_logs, bool): + raise TypeError("Expected argument 'apply_on_transformed_logs' to be a bool") + pulumi.set(__self__, "apply_on_transformed_logs", apply_on_transformed_logs) if filter_pattern and not isinstance(filter_pattern, str): raise TypeError("Expected argument 'filter_pattern' to be a str") pulumi.set(__self__, "filter_pattern", filter_pattern) @@ -33,6 +36,16 @@ def __init__(__self__, filter_pattern=None, metric_transformations=None): raise TypeError("Expected argument 'metric_transformations' to be a list") pulumi.set(__self__, "metric_transformations", metric_transformations) + @property + @pulumi.getter(name="applyOnTransformedLogs") + def apply_on_transformed_logs(self) -> Optional[bool]: + """ + This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + """ + return pulumi.get(self, "apply_on_transformed_logs") + @property @pulumi.getter(name="filterPattern") def filter_pattern(self) -> Optional[str]: @@ -56,6 +69,7 @@ def __await__(self): if False: yield self return GetMetricFilterResult( + apply_on_transformed_logs=self.apply_on_transformed_logs, filter_pattern=self.filter_pattern, metric_transformations=self.metric_transformations) @@ -78,6 +92,7 @@ def get_metric_filter(filter_name: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:logs:getMetricFilter', __args__, opts=opts, typ=GetMetricFilterResult).value return AwaitableGetMetricFilterResult( + apply_on_transformed_logs=pulumi.get(__ret__, 'apply_on_transformed_logs'), filter_pattern=pulumi.get(__ret__, 'filter_pattern'), metric_transformations=pulumi.get(__ret__, 'metric_transformations')) def get_metric_filter_output(filter_name: Optional[pulumi.Input[str]] = None, @@ -97,5 +112,6 @@ def get_metric_filter_output(filter_name: Optional[pulumi.Input[str]] = None, opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('aws-native:logs:getMetricFilter', __args__, opts=opts, typ=GetMetricFilterResult) return __ret__.apply(lambda __response__: GetMetricFilterResult( + apply_on_transformed_logs=pulumi.get(__response__, 'apply_on_transformed_logs'), filter_pattern=pulumi.get(__response__, 'filter_pattern'), metric_transformations=pulumi.get(__response__, 'metric_transformations'))) diff --git a/sdk/python/pulumi_aws_native/logs/get_query_definition.py b/sdk/python/pulumi_aws_native/logs/get_query_definition.py index 46144a988a..230a714978 100644 --- a/sdk/python/pulumi_aws_native/logs/get_query_definition.py +++ b/sdk/python/pulumi_aws_native/logs/get_query_definition.py @@ -13,6 +13,7 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +from ._enums import * __all__ = [ 'GetQueryDefinitionResult', @@ -23,7 +24,7 @@ @pulumi.output_type class GetQueryDefinitionResult: - def __init__(__self__, log_group_names=None, name=None, query_definition_id=None, query_string=None): + def __init__(__self__, log_group_names=None, name=None, query_definition_id=None, query_language=None, query_string=None): if log_group_names and not isinstance(log_group_names, list): raise TypeError("Expected argument 'log_group_names' to be a list") pulumi.set(__self__, "log_group_names", log_group_names) @@ -33,6 +34,9 @@ def __init__(__self__, log_group_names=None, name=None, query_definition_id=None if query_definition_id and not isinstance(query_definition_id, str): raise TypeError("Expected argument 'query_definition_id' to be a str") pulumi.set(__self__, "query_definition_id", query_definition_id) + if query_language and not isinstance(query_language, str): + raise TypeError("Expected argument 'query_language' to be a str") + pulumi.set(__self__, "query_language", query_language) if query_string and not isinstance(query_string, str): raise TypeError("Expected argument 'query_string' to be a str") pulumi.set(__self__, "query_string", query_string) @@ -61,6 +65,14 @@ def query_definition_id(self) -> Optional[str]: """ return pulumi.get(self, "query_definition_id") + @property + @pulumi.getter(name="queryLanguage") + def query_language(self) -> Optional['QueryDefinitionQueryLanguage']: + """ + Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + """ + return pulumi.get(self, "query_language") + @property @pulumi.getter(name="queryString") def query_string(self) -> Optional[str]: @@ -79,6 +91,7 @@ def __await__(self): log_group_names=self.log_group_names, name=self.name, query_definition_id=self.query_definition_id, + query_language=self.query_language, query_string=self.query_string) @@ -99,6 +112,7 @@ def get_query_definition(query_definition_id: Optional[str] = None, log_group_names=pulumi.get(__ret__, 'log_group_names'), name=pulumi.get(__ret__, 'name'), query_definition_id=pulumi.get(__ret__, 'query_definition_id'), + query_language=pulumi.get(__ret__, 'query_language'), query_string=pulumi.get(__ret__, 'query_string')) def get_query_definition_output(query_definition_id: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetQueryDefinitionResult]: @@ -116,4 +130,5 @@ def get_query_definition_output(query_definition_id: Optional[pulumi.Input[str]] log_group_names=pulumi.get(__response__, 'log_group_names'), name=pulumi.get(__response__, 'name'), query_definition_id=pulumi.get(__response__, 'query_definition_id'), + query_language=pulumi.get(__response__, 'query_language'), query_string=pulumi.get(__response__, 'query_string'))) diff --git a/sdk/python/pulumi_aws_native/logs/get_subscription_filter.py b/sdk/python/pulumi_aws_native/logs/get_subscription_filter.py index 4e465390aa..7468829f92 100644 --- a/sdk/python/pulumi_aws_native/logs/get_subscription_filter.py +++ b/sdk/python/pulumi_aws_native/logs/get_subscription_filter.py @@ -24,7 +24,10 @@ @pulumi.output_type class GetSubscriptionFilterResult: - def __init__(__self__, destination_arn=None, distribution=None, filter_pattern=None, role_arn=None): + def __init__(__self__, apply_on_transformed_logs=None, destination_arn=None, distribution=None, filter_pattern=None, role_arn=None): + if apply_on_transformed_logs and not isinstance(apply_on_transformed_logs, bool): + raise TypeError("Expected argument 'apply_on_transformed_logs' to be a bool") + pulumi.set(__self__, "apply_on_transformed_logs", apply_on_transformed_logs) if destination_arn and not isinstance(destination_arn, str): raise TypeError("Expected argument 'destination_arn' to be a str") pulumi.set(__self__, "destination_arn", destination_arn) @@ -38,6 +41,16 @@ def __init__(__self__, destination_arn=None, distribution=None, filter_pattern=N raise TypeError("Expected argument 'role_arn' to be a str") pulumi.set(__self__, "role_arn", role_arn) + @property + @pulumi.getter(name="applyOnTransformedLogs") + def apply_on_transformed_logs(self) -> Optional[bool]: + """ + This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + """ + return pulumi.get(self, "apply_on_transformed_logs") + @property @pulumi.getter(name="destinationArn") def destination_arn(self) -> Optional[str]: @@ -77,6 +90,7 @@ def __await__(self): if False: yield self return GetSubscriptionFilterResult( + apply_on_transformed_logs=self.apply_on_transformed_logs, destination_arn=self.destination_arn, distribution=self.distribution, filter_pattern=self.filter_pattern, @@ -106,6 +120,7 @@ def get_subscription_filter(filter_name: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:logs:getSubscriptionFilter', __args__, opts=opts, typ=GetSubscriptionFilterResult).value return AwaitableGetSubscriptionFilterResult( + apply_on_transformed_logs=pulumi.get(__ret__, 'apply_on_transformed_logs'), destination_arn=pulumi.get(__ret__, 'destination_arn'), distribution=pulumi.get(__ret__, 'distribution'), filter_pattern=pulumi.get(__ret__, 'filter_pattern'), @@ -132,6 +147,7 @@ def get_subscription_filter_output(filter_name: Optional[pulumi.Input[str]] = No opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('aws-native:logs:getSubscriptionFilter', __args__, opts=opts, typ=GetSubscriptionFilterResult) return __ret__.apply(lambda __response__: GetSubscriptionFilterResult( + apply_on_transformed_logs=pulumi.get(__response__, 'apply_on_transformed_logs'), destination_arn=pulumi.get(__response__, 'destination_arn'), distribution=pulumi.get(__response__, 'distribution'), filter_pattern=pulumi.get(__response__, 'filter_pattern'), diff --git a/sdk/python/pulumi_aws_native/logs/get_transformer.py b/sdk/python/pulumi_aws_native/logs/get_transformer.py new file mode 100644 index 0000000000..1a4ce5d264 --- /dev/null +++ b/sdk/python/pulumi_aws_native/logs/get_transformer.py @@ -0,0 +1,79 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'GetTransformerResult', + 'AwaitableGetTransformerResult', + 'get_transformer', + 'get_transformer_output', +] + +@pulumi.output_type +class GetTransformerResult: + def __init__(__self__, transformer_config=None): + if transformer_config and not isinstance(transformer_config, list): + raise TypeError("Expected argument 'transformer_config' to be a list") + pulumi.set(__self__, "transformer_config", transformer_config) + + @property + @pulumi.getter(name="transformerConfig") + def transformer_config(self) -> Optional[Sequence['outputs.TransformerProcessor']]: + """ + List of processors in a transformer + """ + return pulumi.get(self, "transformer_config") + + +class AwaitableGetTransformerResult(GetTransformerResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetTransformerResult( + transformer_config=self.transformer_config) + + +def get_transformer(log_group_identifier: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTransformerResult: + """ + Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + + + :param str log_group_identifier: Existing log group that you want to associate with this transformer. + """ + __args__ = dict() + __args__['logGroupIdentifier'] = log_group_identifier + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:logs:getTransformer', __args__, opts=opts, typ=GetTransformerResult).value + + return AwaitableGetTransformerResult( + transformer_config=pulumi.get(__ret__, 'transformer_config')) +def get_transformer_output(log_group_identifier: Optional[pulumi.Input[str]] = None, + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetTransformerResult]: + """ + Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + + + :param str log_group_identifier: Existing log group that you want to associate with this transformer. + """ + __args__ = dict() + __args__['logGroupIdentifier'] = log_group_identifier + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('aws-native:logs:getTransformer', __args__, opts=opts, typ=GetTransformerResult) + return __ret__.apply(lambda __response__: GetTransformerResult( + transformer_config=pulumi.get(__response__, 'transformer_config'))) diff --git a/sdk/python/pulumi_aws_native/logs/log_group.py b/sdk/python/pulumi_aws_native/logs/log_group.py index 2e7e731de8..30e1a2a28f 100644 --- a/sdk/python/pulumi_aws_native/logs/log_group.py +++ b/sdk/python/pulumi_aws_native/logs/log_group.py @@ -23,6 +23,7 @@ class LogGroupArgs: def __init__(__self__, *, data_protection_policy: Optional[Any] = None, + field_index_policies: Optional[pulumi.Input[Sequence[Any]]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, log_group_class: Optional[pulumi.Input['LogGroupClass']] = None, log_group_name: Optional[pulumi.Input[str]] = None, @@ -51,6 +52,8 @@ def __init__(__self__, *, """ if data_protection_policy is not None: pulumi.set(__self__, "data_protection_policy", data_protection_policy) + if field_index_policies is not None: + pulumi.set(__self__, "field_index_policies", field_index_policies) if kms_key_id is not None: pulumi.set(__self__, "kms_key_id", kms_key_id) if log_group_class is not None: @@ -77,6 +80,15 @@ def data_protection_policy(self) -> Optional[Any]: def data_protection_policy(self, value: Optional[Any]): pulumi.set(self, "data_protection_policy", value) + @property + @pulumi.getter(name="fieldIndexPolicies") + def field_index_policies(self) -> Optional[pulumi.Input[Sequence[Any]]]: + return pulumi.get(self, "field_index_policies") + + @field_index_policies.setter + def field_index_policies(self, value: Optional[pulumi.Input[Sequence[Any]]]): + pulumi.set(self, "field_index_policies", value) + @property @pulumi.getter(name="kmsKeyId") def kms_key_id(self) -> Optional[pulumi.Input[str]]: @@ -153,6 +165,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, data_protection_policy: Optional[Any] = None, + field_index_policies: Optional[pulumi.Input[Sequence[Any]]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, log_group_class: Optional[pulumi.Input['LogGroupClass']] = None, log_group_name: Optional[pulumi.Input[str]] = None, @@ -216,6 +229,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, data_protection_policy: Optional[Any] = None, + field_index_policies: Optional[pulumi.Input[Sequence[Any]]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, log_group_class: Optional[pulumi.Input['LogGroupClass']] = None, log_group_name: Optional[pulumi.Input[str]] = None, @@ -231,6 +245,7 @@ def _internal_init(__self__, __props__ = LogGroupArgs.__new__(LogGroupArgs) __props__.__dict__["data_protection_policy"] = data_protection_policy + __props__.__dict__["field_index_policies"] = field_index_policies __props__.__dict__["kms_key_id"] = kms_key_id __props__.__dict__["log_group_class"] = log_group_class __props__.__dict__["log_group_name"] = log_group_name @@ -263,6 +278,7 @@ def get(resource_name: str, __props__.__dict__["arn"] = None __props__.__dict__["data_protection_policy"] = None + __props__.__dict__["field_index_policies"] = None __props__.__dict__["kms_key_id"] = None __props__.__dict__["log_group_class"] = None __props__.__dict__["log_group_name"] = None @@ -289,6 +305,11 @@ def data_protection_policy(self) -> pulumi.Output[Optional[Any]]: """ return pulumi.get(self, "data_protection_policy") + @property + @pulumi.getter(name="fieldIndexPolicies") + def field_index_policies(self) -> pulumi.Output[Optional[Sequence[Any]]]: + return pulumi.get(self, "field_index_policies") + @property @pulumi.getter(name="kmsKeyId") def kms_key_id(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/logs/metric_filter.py b/sdk/python/pulumi_aws_native/logs/metric_filter.py index 0d4d335ae8..a8a29e300f 100644 --- a/sdk/python/pulumi_aws_native/logs/metric_filter.py +++ b/sdk/python/pulumi_aws_native/logs/metric_filter.py @@ -25,17 +25,23 @@ def __init__(__self__, *, filter_pattern: pulumi.Input[str], log_group_name: pulumi.Input[str], metric_transformations: pulumi.Input[Sequence[pulumi.Input['MetricFilterMetricTransformationArgs']]], + apply_on_transformed_logs: Optional[pulumi.Input[bool]] = None, filter_name: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a MetricFilter resource. :param pulumi.Input[str] filter_pattern: 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). :param pulumi.Input[str] log_group_name: The name of an existing log group that you want to associate with this metric filter. :param pulumi.Input[Sequence[pulumi.Input['MetricFilterMetricTransformationArgs']]] metric_transformations: The metric transformations. + :param pulumi.Input[bool] apply_on_transformed_logs: This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. :param pulumi.Input[str] filter_name: The name of the metric filter. """ pulumi.set(__self__, "filter_pattern", filter_pattern) pulumi.set(__self__, "log_group_name", log_group_name) pulumi.set(__self__, "metric_transformations", metric_transformations) + if apply_on_transformed_logs is not None: + pulumi.set(__self__, "apply_on_transformed_logs", apply_on_transformed_logs) if filter_name is not None: pulumi.set(__self__, "filter_name", filter_name) @@ -75,6 +81,20 @@ def metric_transformations(self) -> pulumi.Input[Sequence[pulumi.Input['MetricFi def metric_transformations(self, value: pulumi.Input[Sequence[pulumi.Input['MetricFilterMetricTransformationArgs']]]): pulumi.set(self, "metric_transformations", value) + @property + @pulumi.getter(name="applyOnTransformedLogs") + def apply_on_transformed_logs(self) -> Optional[pulumi.Input[bool]]: + """ + This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + """ + return pulumi.get(self, "apply_on_transformed_logs") + + @apply_on_transformed_logs.setter + def apply_on_transformed_logs(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "apply_on_transformed_logs", value) + @property @pulumi.getter(name="filterName") def filter_name(self) -> Optional[pulumi.Input[str]]: @@ -93,6 +113,7 @@ class MetricFilter(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + apply_on_transformed_logs: Optional[pulumi.Input[bool]] = None, filter_name: Optional[pulumi.Input[str]] = None, filter_pattern: Optional[pulumi.Input[str]] = None, log_group_name: Optional[pulumi.Input[str]] = None, @@ -104,6 +125,9 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[bool] apply_on_transformed_logs: This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. :param pulumi.Input[str] filter_name: The name of the metric filter. :param pulumi.Input[str] filter_pattern: 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). :param pulumi.Input[str] log_group_name: The name of an existing log group that you want to associate with this metric filter. @@ -134,6 +158,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + apply_on_transformed_logs: Optional[pulumi.Input[bool]] = None, filter_name: Optional[pulumi.Input[str]] = None, filter_pattern: Optional[pulumi.Input[str]] = None, log_group_name: Optional[pulumi.Input[str]] = None, @@ -147,6 +172,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = MetricFilterArgs.__new__(MetricFilterArgs) + __props__.__dict__["apply_on_transformed_logs"] = apply_on_transformed_logs __props__.__dict__["filter_name"] = filter_name if filter_pattern is None and not opts.urn: raise TypeError("Missing required property 'filter_pattern'") @@ -181,12 +207,23 @@ def get(resource_name: str, __props__ = MetricFilterArgs.__new__(MetricFilterArgs) + __props__.__dict__["apply_on_transformed_logs"] = None __props__.__dict__["filter_name"] = None __props__.__dict__["filter_pattern"] = None __props__.__dict__["log_group_name"] = None __props__.__dict__["metric_transformations"] = None return MetricFilter(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="applyOnTransformedLogs") + def apply_on_transformed_logs(self) -> pulumi.Output[Optional[bool]]: + """ + This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the metric filter is applied on the transformed version of the log events instead of the original ingested log events. + """ + return pulumi.get(self, "apply_on_transformed_logs") + @property @pulumi.getter(name="filterName") def filter_name(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/logs/outputs.py b/sdk/python/pulumi_aws_native/logs/outputs.py index 5ecfccaad6..28781341bb 100644 --- a/sdk/python/pulumi_aws_native/logs/outputs.py +++ b/sdk/python/pulumi_aws_native/logs/outputs.py @@ -22,6 +22,36 @@ 'MetricFilterDimension', 'MetricFilterMetricTransformation', 'ResourceConfigProperties', + 'TransformerAddKeyEntry', + 'TransformerCopyValueEntry', + 'TransformerMoveKeyEntry', + 'TransformerParseCloudfront', + 'TransformerParsePostgres', + 'TransformerParseRoute53', + 'TransformerParseVpc', + 'TransformerParseWaf', + 'TransformerProcessor', + 'TransformerProcessorAddKeysProperties', + 'TransformerProcessorCopyValueProperties', + 'TransformerProcessorCsvProperties', + 'TransformerProcessorDateTimeConverterProperties', + 'TransformerProcessorDeleteKeysProperties', + 'TransformerProcessorGrokProperties', + 'TransformerProcessorListToMapProperties', + 'TransformerProcessorLowerCaseStringProperties', + 'TransformerProcessorMoveKeysProperties', + 'TransformerProcessorParseJsonProperties', + 'TransformerProcessorParseKeyValueProperties', + 'TransformerProcessorRenameKeysProperties', + 'TransformerProcessorSplitStringProperties', + 'TransformerProcessorSubstituteStringProperties', + 'TransformerProcessorTrimStringProperties', + 'TransformerProcessorTypeConverterProperties', + 'TransformerProcessorUpperCaseStringProperties', + 'TransformerRenameKeyEntry', + 'TransformerSplitStringEntry', + 'TransformerSubstituteStringEntry', + 'TransformerTypeConverterEntry', ] @pulumi.output_type @@ -360,3 +390,1355 @@ def open_search_resource_config(self) -> Optional['outputs.IntegrationOpenSearch return pulumi.get(self, "open_search_resource_config") +@pulumi.output_type +class TransformerAddKeyEntry(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "overwriteIfExists": + suggest = "overwrite_if_exists" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerAddKeyEntry. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerAddKeyEntry.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerAddKeyEntry.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + key: str, + value: str, + overwrite_if_exists: Optional[bool] = None): + """ + :param str key: The key of the new entry to be added to the log event + :param str value: The value of the new entry to be added to the log event + :param bool overwrite_if_exists: Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def key(self) -> str: + """ + The key of the new entry to be added to the log event + """ + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + """ + The value of the new entry to be added to the log event + """ + return pulumi.get(self, "value") + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[bool]: + """ + Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is `false` . + """ + return pulumi.get(self, "overwrite_if_exists") + + +@pulumi.output_type +class TransformerCopyValueEntry(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "overwriteIfExists": + suggest = "overwrite_if_exists" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerCopyValueEntry. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerCopyValueEntry.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerCopyValueEntry.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + source: str, + target: str, + overwrite_if_exists: Optional[bool] = None): + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "target", target) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def source(self) -> str: + return pulumi.get(self, "source") + + @property + @pulumi.getter + def target(self) -> str: + return pulumi.get(self, "target") + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[bool]: + return pulumi.get(self, "overwrite_if_exists") + + +@pulumi.output_type +class TransformerMoveKeyEntry(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "overwriteIfExists": + suggest = "overwrite_if_exists" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerMoveKeyEntry. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerMoveKeyEntry.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerMoveKeyEntry.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + source: str, + target: str, + overwrite_if_exists: Optional[bool] = None): + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "target", target) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def source(self) -> str: + return pulumi.get(self, "source") + + @property + @pulumi.getter + def target(self) -> str: + return pulumi.get(self, "target") + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[bool]: + return pulumi.get(self, "overwrite_if_exists") + + +@pulumi.output_type +class TransformerParseCloudfront(dict): + def __init__(__self__, *, + source: Optional[str] = None): + """ + :param str source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[str]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerParsePostgres(dict): + def __init__(__self__, *, + source: Optional[str] = None): + """ + :param str source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[str]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerParseRoute53(dict): + def __init__(__self__, *, + source: Optional[str] = None): + """ + :param str source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[str]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerParseVpc(dict): + def __init__(__self__, *, + source: Optional[str] = None): + """ + :param str source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[str]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerParseWaf(dict): + def __init__(__self__, *, + source: Optional[str] = None): + """ + :param str source: Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def source(self) -> Optional[str]: + """ + Omit this parameter and the whole log message will be processed by this processor. No other value than `@message` is allowed for `source` . + """ + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerProcessor(dict): + """ + Individual processor configuration + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "addKeys": + suggest = "add_keys" + elif key == "copyValue": + suggest = "copy_value" + elif key == "dateTimeConverter": + suggest = "date_time_converter" + elif key == "deleteKeys": + suggest = "delete_keys" + elif key == "listToMap": + suggest = "list_to_map" + elif key == "lowerCaseString": + suggest = "lower_case_string" + elif key == "moveKeys": + suggest = "move_keys" + elif key == "parseCloudfront": + suggest = "parse_cloudfront" + elif key == "parseJson": + suggest = "parse_json" + elif key == "parseKeyValue": + suggest = "parse_key_value" + elif key == "parsePostgres": + suggest = "parse_postgres" + elif key == "parseRoute53": + suggest = "parse_route53" + elif key == "parseVpc": + suggest = "parse_vpc" + elif key == "parseWaf": + suggest = "parse_waf" + elif key == "renameKeys": + suggest = "rename_keys" + elif key == "splitString": + suggest = "split_string" + elif key == "substituteString": + suggest = "substitute_string" + elif key == "trimString": + suggest = "trim_string" + elif key == "typeConverter": + suggest = "type_converter" + elif key == "upperCaseString": + suggest = "upper_case_string" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessor. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessor.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessor.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + add_keys: Optional['outputs.TransformerProcessorAddKeysProperties'] = None, + copy_value: Optional['outputs.TransformerProcessorCopyValueProperties'] = None, + csv: Optional['outputs.TransformerProcessorCsvProperties'] = None, + date_time_converter: Optional['outputs.TransformerProcessorDateTimeConverterProperties'] = None, + delete_keys: Optional['outputs.TransformerProcessorDeleteKeysProperties'] = None, + grok: Optional['outputs.TransformerProcessorGrokProperties'] = None, + list_to_map: Optional['outputs.TransformerProcessorListToMapProperties'] = None, + lower_case_string: Optional['outputs.TransformerProcessorLowerCaseStringProperties'] = None, + move_keys: Optional['outputs.TransformerProcessorMoveKeysProperties'] = None, + parse_cloudfront: Optional['outputs.TransformerParseCloudfront'] = None, + parse_json: Optional['outputs.TransformerProcessorParseJsonProperties'] = None, + parse_key_value: Optional['outputs.TransformerProcessorParseKeyValueProperties'] = None, + parse_postgres: Optional['outputs.TransformerParsePostgres'] = None, + parse_route53: Optional['outputs.TransformerParseRoute53'] = None, + parse_vpc: Optional['outputs.TransformerParseVpc'] = None, + parse_waf: Optional['outputs.TransformerParseWaf'] = None, + rename_keys: Optional['outputs.TransformerProcessorRenameKeysProperties'] = None, + split_string: Optional['outputs.TransformerProcessorSplitStringProperties'] = None, + substitute_string: Optional['outputs.TransformerProcessorSubstituteStringProperties'] = None, + trim_string: Optional['outputs.TransformerProcessorTrimStringProperties'] = None, + type_converter: Optional['outputs.TransformerProcessorTypeConverterProperties'] = None, + upper_case_string: Optional['outputs.TransformerProcessorUpperCaseStringProperties'] = None): + """ + Individual processor configuration + :param 'TransformerProcessorAddKeysProperties' add_keys: Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + :param 'TransformerProcessorCopyValueProperties' copy_value: Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + :param 'TransformerProcessorCsvProperties' csv: Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + :param 'TransformerProcessorDateTimeConverterProperties' date_time_converter: Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + :param 'TransformerProcessorDeleteKeysProperties' delete_keys: Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + :param 'TransformerProcessorGrokProperties' grok: Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + :param 'TransformerProcessorListToMapProperties' list_to_map: Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + :param 'TransformerProcessorLowerCaseStringProperties' lower_case_string: Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + :param 'TransformerProcessorMoveKeysProperties' move_keys: Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + :param 'TransformerParseCloudfront' parse_cloudfront: Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param 'TransformerProcessorParseJsonProperties' parse_json: Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + :param 'TransformerProcessorParseKeyValueProperties' parse_key_value: Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + :param 'TransformerParsePostgres' parse_postgres: Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param 'TransformerParseRoute53' parse_route53: Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param 'TransformerParseVpc' parse_vpc: Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param 'TransformerParseWaf' parse_waf: Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + :param 'TransformerProcessorRenameKeysProperties' rename_keys: Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + :param 'TransformerProcessorSplitStringProperties' split_string: Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + :param 'TransformerProcessorSubstituteStringProperties' substitute_string: Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + :param 'TransformerProcessorTrimStringProperties' trim_string: Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + :param 'TransformerProcessorTypeConverterProperties' type_converter: Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + :param 'TransformerProcessorUpperCaseStringProperties' upper_case_string: Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + if add_keys is not None: + pulumi.set(__self__, "add_keys", add_keys) + if copy_value is not None: + pulumi.set(__self__, "copy_value", copy_value) + if csv is not None: + pulumi.set(__self__, "csv", csv) + if date_time_converter is not None: + pulumi.set(__self__, "date_time_converter", date_time_converter) + if delete_keys is not None: + pulumi.set(__self__, "delete_keys", delete_keys) + if grok is not None: + pulumi.set(__self__, "grok", grok) + if list_to_map is not None: + pulumi.set(__self__, "list_to_map", list_to_map) + if lower_case_string is not None: + pulumi.set(__self__, "lower_case_string", lower_case_string) + if move_keys is not None: + pulumi.set(__self__, "move_keys", move_keys) + if parse_cloudfront is not None: + pulumi.set(__self__, "parse_cloudfront", parse_cloudfront) + if parse_json is not None: + pulumi.set(__self__, "parse_json", parse_json) + if parse_key_value is not None: + pulumi.set(__self__, "parse_key_value", parse_key_value) + if parse_postgres is not None: + pulumi.set(__self__, "parse_postgres", parse_postgres) + if parse_route53 is not None: + pulumi.set(__self__, "parse_route53", parse_route53) + if parse_vpc is not None: + pulumi.set(__self__, "parse_vpc", parse_vpc) + if parse_waf is not None: + pulumi.set(__self__, "parse_waf", parse_waf) + if rename_keys is not None: + pulumi.set(__self__, "rename_keys", rename_keys) + if split_string is not None: + pulumi.set(__self__, "split_string", split_string) + if substitute_string is not None: + pulumi.set(__self__, "substitute_string", substitute_string) + if trim_string is not None: + pulumi.set(__self__, "trim_string", trim_string) + if type_converter is not None: + pulumi.set(__self__, "type_converter", type_converter) + if upper_case_string is not None: + pulumi.set(__self__, "upper_case_string", upper_case_string) + + @property + @pulumi.getter(name="addKeys") + def add_keys(self) -> Optional['outputs.TransformerProcessorAddKeysProperties']: + """ + Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + """ + return pulumi.get(self, "add_keys") + + @property + @pulumi.getter(name="copyValue") + def copy_value(self) -> Optional['outputs.TransformerProcessorCopyValueProperties']: + """ + Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + """ + return pulumi.get(self, "copy_value") + + @property + @pulumi.getter + def csv(self) -> Optional['outputs.TransformerProcessorCsvProperties']: + """ + Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + """ + return pulumi.get(self, "csv") + + @property + @pulumi.getter(name="dateTimeConverter") + def date_time_converter(self) -> Optional['outputs.TransformerProcessorDateTimeConverterProperties']: + """ + Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + """ + return pulumi.get(self, "date_time_converter") + + @property + @pulumi.getter(name="deleteKeys") + def delete_keys(self) -> Optional['outputs.TransformerProcessorDeleteKeysProperties']: + """ + Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + """ + return pulumi.get(self, "delete_keys") + + @property + @pulumi.getter + def grok(self) -> Optional['outputs.TransformerProcessorGrokProperties']: + """ + Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + """ + return pulumi.get(self, "grok") + + @property + @pulumi.getter(name="listToMap") + def list_to_map(self) -> Optional['outputs.TransformerProcessorListToMapProperties']: + """ + Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + """ + return pulumi.get(self, "list_to_map") + + @property + @pulumi.getter(name="lowerCaseString") + def lower_case_string(self) -> Optional['outputs.TransformerProcessorLowerCaseStringProperties']: + """ + Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + """ + return pulumi.get(self, "lower_case_string") + + @property + @pulumi.getter(name="moveKeys") + def move_keys(self) -> Optional['outputs.TransformerProcessorMoveKeysProperties']: + """ + Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + """ + return pulumi.get(self, "move_keys") + + @property + @pulumi.getter(name="parseCloudfront") + def parse_cloudfront(self) -> Optional['outputs.TransformerParseCloudfront']: + """ + Use this parameter to include the [parseCloudfront](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_cloudfront") + + @property + @pulumi.getter(name="parseJson") + def parse_json(self) -> Optional['outputs.TransformerProcessorParseJsonProperties']: + """ + Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + """ + return pulumi.get(self, "parse_json") + + @property + @pulumi.getter(name="parseKeyValue") + def parse_key_value(self) -> Optional['outputs.TransformerProcessorParseKeyValueProperties']: + """ + Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + """ + return pulumi.get(self, "parse_key_value") + + @property + @pulumi.getter(name="parsePostgres") + def parse_postgres(self) -> Optional['outputs.TransformerParsePostgres']: + """ + Use this parameter to include the [parsePostGres](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_postgres") + + @property + @pulumi.getter(name="parseRoute53") + def parse_route53(self) -> Optional['outputs.TransformerParseRoute53']: + """ + Use this parameter to include the [parseRoute53](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_route53") + + @property + @pulumi.getter(name="parseVpc") + def parse_vpc(self) -> Optional['outputs.TransformerParseVpc']: + """ + Use this parameter to include the [parseVPC](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_vpc") + + @property + @pulumi.getter(name="parseWaf") + def parse_waf(self) -> Optional['outputs.TransformerParseWaf']: + """ + Use this parameter to include the [parseWAF](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF) processor in your transformer. + + If you use this processor, it must be the first processor in your transformer. + """ + return pulumi.get(self, "parse_waf") + + @property + @pulumi.getter(name="renameKeys") + def rename_keys(self) -> Optional['outputs.TransformerProcessorRenameKeysProperties']: + """ + Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + """ + return pulumi.get(self, "rename_keys") + + @property + @pulumi.getter(name="splitString") + def split_string(self) -> Optional['outputs.TransformerProcessorSplitStringProperties']: + """ + Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + """ + return pulumi.get(self, "split_string") + + @property + @pulumi.getter(name="substituteString") + def substitute_string(self) -> Optional['outputs.TransformerProcessorSubstituteStringProperties']: + """ + Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + """ + return pulumi.get(self, "substitute_string") + + @property + @pulumi.getter(name="trimString") + def trim_string(self) -> Optional['outputs.TransformerProcessorTrimStringProperties']: + """ + Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + """ + return pulumi.get(self, "trim_string") + + @property + @pulumi.getter(name="typeConverter") + def type_converter(self) -> Optional['outputs.TransformerProcessorTypeConverterProperties']: + """ + Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + """ + return pulumi.get(self, "type_converter") + + @property + @pulumi.getter(name="upperCaseString") + def upper_case_string(self) -> Optional['outputs.TransformerProcessorUpperCaseStringProperties']: + """ + Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + return pulumi.get(self, "upper_case_string") + + +@pulumi.output_type +class TransformerProcessorAddKeysProperties(dict): + """ + Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + """ + def __init__(__self__, *, + entries: Sequence['outputs.TransformerAddKeyEntry']): + """ + Use this parameter to include the [addKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> Sequence['outputs.TransformerAddKeyEntry']: + return pulumi.get(self, "entries") + + +@pulumi.output_type +class TransformerProcessorCopyValueProperties(dict): + """ + Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + """ + def __init__(__self__, *, + entries: Sequence['outputs.TransformerCopyValueEntry']): + """ + Use this parameter to include the [copyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> Sequence['outputs.TransformerCopyValueEntry']: + return pulumi.get(self, "entries") + + +@pulumi.output_type +class TransformerProcessorCsvProperties(dict): + """ + Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "quoteCharacter": + suggest = "quote_character" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorCsvProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorCsvProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorCsvProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + columns: Optional[Sequence[str]] = None, + delimiter: Optional[str] = None, + quote_character: Optional[str] = None, + source: Optional[str] = None): + """ + Use this parameter to include the [CSV](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV) processor in your transformer. + """ + if columns is not None: + pulumi.set(__self__, "columns", columns) + if delimiter is not None: + pulumi.set(__self__, "delimiter", delimiter) + if quote_character is not None: + pulumi.set(__self__, "quote_character", quote_character) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def columns(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "columns") + + @property + @pulumi.getter + def delimiter(self) -> Optional[str]: + return pulumi.get(self, "delimiter") + + @property + @pulumi.getter(name="quoteCharacter") + def quote_character(self) -> Optional[str]: + return pulumi.get(self, "quote_character") + + @property + @pulumi.getter + def source(self) -> Optional[str]: + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerProcessorDateTimeConverterProperties(dict): + """ + Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "matchPatterns": + suggest = "match_patterns" + elif key == "sourceTimezone": + suggest = "source_timezone" + elif key == "targetFormat": + suggest = "target_format" + elif key == "targetTimezone": + suggest = "target_timezone" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorDateTimeConverterProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorDateTimeConverterProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorDateTimeConverterProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + match_patterns: Sequence[str], + source: str, + target: str, + locale: Optional[str] = None, + source_timezone: Optional[str] = None, + target_format: Optional[str] = None, + target_timezone: Optional[str] = None): + """ + Use this parameter to include the [datetimeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter) processor in your transformer. + """ + pulumi.set(__self__, "match_patterns", match_patterns) + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "target", target) + if locale is not None: + pulumi.set(__self__, "locale", locale) + if source_timezone is not None: + pulumi.set(__self__, "source_timezone", source_timezone) + if target_format is not None: + pulumi.set(__self__, "target_format", target_format) + if target_timezone is not None: + pulumi.set(__self__, "target_timezone", target_timezone) + + @property + @pulumi.getter(name="matchPatterns") + def match_patterns(self) -> Sequence[str]: + return pulumi.get(self, "match_patterns") + + @property + @pulumi.getter + def source(self) -> str: + return pulumi.get(self, "source") + + @property + @pulumi.getter + def target(self) -> str: + return pulumi.get(self, "target") + + @property + @pulumi.getter + def locale(self) -> Optional[str]: + return pulumi.get(self, "locale") + + @property + @pulumi.getter(name="sourceTimezone") + def source_timezone(self) -> Optional[str]: + return pulumi.get(self, "source_timezone") + + @property + @pulumi.getter(name="targetFormat") + def target_format(self) -> Optional[str]: + return pulumi.get(self, "target_format") + + @property + @pulumi.getter(name="targetTimezone") + def target_timezone(self) -> Optional[str]: + return pulumi.get(self, "target_timezone") + + +@pulumi.output_type +class TransformerProcessorDeleteKeysProperties(dict): + """ + Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "withKeys": + suggest = "with_keys" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorDeleteKeysProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorDeleteKeysProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorDeleteKeysProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + with_keys: Sequence[str]): + """ + Use this parameter to include the [deleteKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> Sequence[str]: + return pulumi.get(self, "with_keys") + + +@pulumi.output_type +class TransformerProcessorGrokProperties(dict): + """ + Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + """ + def __init__(__self__, *, + match: str, + source: Optional[str] = None): + """ + Use this parameter to include the [grok](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok) processor in your transformer. + """ + pulumi.set(__self__, "match", match) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def match(self) -> str: + return pulumi.get(self, "match") + + @property + @pulumi.getter + def source(self) -> Optional[str]: + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerProcessorListToMapProperties(dict): + """ + Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "flattenedElement": + suggest = "flattened_element" + elif key == "valueKey": + suggest = "value_key" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorListToMapProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorListToMapProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorListToMapProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + key: str, + source: str, + flatten: Optional[bool] = None, + flattened_element: Optional['TransformerProcessorListToMapPropertiesFlattenedElement'] = None, + target: Optional[str] = None, + value_key: Optional[str] = None): + """ + Use this parameter to include the [listToMap](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap) processor in your transformer. + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "source", source) + if flatten is not None: + pulumi.set(__self__, "flatten", flatten) + if flattened_element is not None: + pulumi.set(__self__, "flattened_element", flattened_element) + if target is not None: + pulumi.set(__self__, "target", target) + if value_key is not None: + pulumi.set(__self__, "value_key", value_key) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def source(self) -> str: + return pulumi.get(self, "source") + + @property + @pulumi.getter + def flatten(self) -> Optional[bool]: + return pulumi.get(self, "flatten") + + @property + @pulumi.getter(name="flattenedElement") + def flattened_element(self) -> Optional['TransformerProcessorListToMapPropertiesFlattenedElement']: + return pulumi.get(self, "flattened_element") + + @property + @pulumi.getter + def target(self) -> Optional[str]: + return pulumi.get(self, "target") + + @property + @pulumi.getter(name="valueKey") + def value_key(self) -> Optional[str]: + return pulumi.get(self, "value_key") + + +@pulumi.output_type +class TransformerProcessorLowerCaseStringProperties(dict): + """ + Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "withKeys": + suggest = "with_keys" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorLowerCaseStringProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorLowerCaseStringProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorLowerCaseStringProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + with_keys: Sequence[str]): + """ + Use this parameter to include the [lowerCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> Sequence[str]: + return pulumi.get(self, "with_keys") + + +@pulumi.output_type +class TransformerProcessorMoveKeysProperties(dict): + """ + Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + """ + def __init__(__self__, *, + entries: Sequence['outputs.TransformerMoveKeyEntry']): + """ + Use this parameter to include the [moveKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> Sequence['outputs.TransformerMoveKeyEntry']: + return pulumi.get(self, "entries") + + +@pulumi.output_type +class TransformerProcessorParseJsonProperties(dict): + """ + Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + """ + def __init__(__self__, *, + destination: Optional[str] = None, + source: Optional[str] = None): + """ + Use this parameter to include the [parseJSON](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON) processor in your transformer. + """ + if destination is not None: + pulumi.set(__self__, "destination", destination) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def destination(self) -> Optional[str]: + return pulumi.get(self, "destination") + + @property + @pulumi.getter + def source(self) -> Optional[str]: + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerProcessorParseKeyValueProperties(dict): + """ + Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "fieldDelimiter": + suggest = "field_delimiter" + elif key == "keyPrefix": + suggest = "key_prefix" + elif key == "keyValueDelimiter": + suggest = "key_value_delimiter" + elif key == "nonMatchValue": + suggest = "non_match_value" + elif key == "overwriteIfExists": + suggest = "overwrite_if_exists" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorParseKeyValueProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorParseKeyValueProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorParseKeyValueProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + destination: Optional[str] = None, + field_delimiter: Optional[str] = None, + key_prefix: Optional[str] = None, + key_value_delimiter: Optional[str] = None, + non_match_value: Optional[str] = None, + overwrite_if_exists: Optional[bool] = None, + source: Optional[str] = None): + """ + Use this parameter to include the [parseKeyValue](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue) processor in your transformer. + """ + if destination is not None: + pulumi.set(__self__, "destination", destination) + if field_delimiter is not None: + pulumi.set(__self__, "field_delimiter", field_delimiter) + if key_prefix is not None: + pulumi.set(__self__, "key_prefix", key_prefix) + if key_value_delimiter is not None: + pulumi.set(__self__, "key_value_delimiter", key_value_delimiter) + if non_match_value is not None: + pulumi.set(__self__, "non_match_value", non_match_value) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + if source is not None: + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def destination(self) -> Optional[str]: + return pulumi.get(self, "destination") + + @property + @pulumi.getter(name="fieldDelimiter") + def field_delimiter(self) -> Optional[str]: + return pulumi.get(self, "field_delimiter") + + @property + @pulumi.getter(name="keyPrefix") + def key_prefix(self) -> Optional[str]: + return pulumi.get(self, "key_prefix") + + @property + @pulumi.getter(name="keyValueDelimiter") + def key_value_delimiter(self) -> Optional[str]: + return pulumi.get(self, "key_value_delimiter") + + @property + @pulumi.getter(name="nonMatchValue") + def non_match_value(self) -> Optional[str]: + return pulumi.get(self, "non_match_value") + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[bool]: + return pulumi.get(self, "overwrite_if_exists") + + @property + @pulumi.getter + def source(self) -> Optional[str]: + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerProcessorRenameKeysProperties(dict): + """ + Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + """ + def __init__(__self__, *, + entries: Sequence['outputs.TransformerRenameKeyEntry']): + """ + Use this parameter to include the [renameKeys](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> Sequence['outputs.TransformerRenameKeyEntry']: + return pulumi.get(self, "entries") + + +@pulumi.output_type +class TransformerProcessorSplitStringProperties(dict): + """ + Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + """ + def __init__(__self__, *, + entries: Sequence['outputs.TransformerSplitStringEntry']): + """ + Use this parameter to include the [splitString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> Sequence['outputs.TransformerSplitStringEntry']: + return pulumi.get(self, "entries") + + +@pulumi.output_type +class TransformerProcessorSubstituteStringProperties(dict): + """ + Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + """ + def __init__(__self__, *, + entries: Sequence['outputs.TransformerSubstituteStringEntry']): + """ + Use this parameter to include the [substituteString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> Sequence['outputs.TransformerSubstituteStringEntry']: + return pulumi.get(self, "entries") + + +@pulumi.output_type +class TransformerProcessorTrimStringProperties(dict): + """ + Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "withKeys": + suggest = "with_keys" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorTrimStringProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorTrimStringProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorTrimStringProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + with_keys: Sequence[str]): + """ + Use this parameter to include the [trimString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> Sequence[str]: + return pulumi.get(self, "with_keys") + + +@pulumi.output_type +class TransformerProcessorTypeConverterProperties(dict): + """ + Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + """ + def __init__(__self__, *, + entries: Sequence['outputs.TransformerTypeConverterEntry']): + """ + Use this parameter to include the [typeConverter](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter) processor in your transformer. + """ + pulumi.set(__self__, "entries", entries) + + @property + @pulumi.getter + def entries(self) -> Sequence['outputs.TransformerTypeConverterEntry']: + return pulumi.get(self, "entries") + + +@pulumi.output_type +class TransformerProcessorUpperCaseStringProperties(dict): + """ + Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "withKeys": + suggest = "with_keys" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerProcessorUpperCaseStringProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerProcessorUpperCaseStringProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerProcessorUpperCaseStringProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + with_keys: Sequence[str]): + """ + Use this parameter to include the [upperCaseString](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString) processor in your transformer. + """ + pulumi.set(__self__, "with_keys", with_keys) + + @property + @pulumi.getter(name="withKeys") + def with_keys(self) -> Sequence[str]: + return pulumi.get(self, "with_keys") + + +@pulumi.output_type +class TransformerRenameKeyEntry(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "renameTo": + suggest = "rename_to" + elif key == "overwriteIfExists": + suggest = "overwrite_if_exists" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerRenameKeyEntry. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerRenameKeyEntry.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerRenameKeyEntry.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + key: str, + rename_to: str, + overwrite_if_exists: Optional[bool] = None): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "rename_to", rename_to) + if overwrite_if_exists is not None: + pulumi.set(__self__, "overwrite_if_exists", overwrite_if_exists) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter(name="renameTo") + def rename_to(self) -> str: + return pulumi.get(self, "rename_to") + + @property + @pulumi.getter(name="overwriteIfExists") + def overwrite_if_exists(self) -> Optional[bool]: + return pulumi.get(self, "overwrite_if_exists") + + +@pulumi.output_type +class TransformerSplitStringEntry(dict): + def __init__(__self__, *, + delimiter: str, + source: str): + pulumi.set(__self__, "delimiter", delimiter) + pulumi.set(__self__, "source", source) + + @property + @pulumi.getter + def delimiter(self) -> str: + return pulumi.get(self, "delimiter") + + @property + @pulumi.getter + def source(self) -> str: + return pulumi.get(self, "source") + + +@pulumi.output_type +class TransformerSubstituteStringEntry(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "from": + suggest = "from_" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerSubstituteStringEntry. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerSubstituteStringEntry.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerSubstituteStringEntry.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + from_: str, + source: str, + to: str): + pulumi.set(__self__, "from_", from_) + pulumi.set(__self__, "source", source) + pulumi.set(__self__, "to", to) + + @property + @pulumi.getter(name="from") + def from_(self) -> str: + return pulumi.get(self, "from_") + + @property + @pulumi.getter + def source(self) -> str: + return pulumi.get(self, "source") + + @property + @pulumi.getter + def to(self) -> str: + return pulumi.get(self, "to") + + +@pulumi.output_type +class TransformerTypeConverterEntry(dict): + def __init__(__self__, *, + key: str, + type: 'TransformerTypeConverterEntryType'): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def type(self) -> 'TransformerTypeConverterEntryType': + return pulumi.get(self, "type") + + diff --git a/sdk/python/pulumi_aws_native/logs/query_definition.py b/sdk/python/pulumi_aws_native/logs/query_definition.py index 8eef05101f..8e2c33f94b 100644 --- a/sdk/python/pulumi_aws_native/logs/query_definition.py +++ b/sdk/python/pulumi_aws_native/logs/query_definition.py @@ -13,6 +13,7 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +from ._enums import * __all__ = ['QueryDefinitionArgs', 'QueryDefinition'] @@ -21,18 +22,22 @@ class QueryDefinitionArgs: def __init__(__self__, *, query_string: pulumi.Input[str], log_group_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - name: Optional[pulumi.Input[str]] = None): + name: Optional[pulumi.Input[str]] = None, + query_language: Optional[pulumi.Input['QueryDefinitionQueryLanguage']] = None): """ The set of arguments for constructing a QueryDefinition resource. :param pulumi.Input[str] query_string: The query string to use for this definition :param pulumi.Input[Sequence[pulumi.Input[str]]] log_group_names: Optionally define specific log groups as part of your query definition :param pulumi.Input[str] name: A name for the saved query definition + :param pulumi.Input['QueryDefinitionQueryLanguage'] query_language: Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. """ pulumi.set(__self__, "query_string", query_string) if log_group_names is not None: pulumi.set(__self__, "log_group_names", log_group_names) if name is not None: pulumi.set(__self__, "name", name) + if query_language is not None: + pulumi.set(__self__, "query_language", query_language) @property @pulumi.getter(name="queryString") @@ -70,6 +75,18 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) + @property + @pulumi.getter(name="queryLanguage") + def query_language(self) -> Optional[pulumi.Input['QueryDefinitionQueryLanguage']]: + """ + Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + """ + return pulumi.get(self, "query_language") + + @query_language.setter + def query_language(self, value: Optional[pulumi.Input['QueryDefinitionQueryLanguage']]): + pulumi.set(self, "query_language", value) + class QueryDefinition(pulumi.CustomResource): @overload @@ -78,6 +95,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, log_group_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, name: Optional[pulumi.Input[str]] = None, + query_language: Optional[pulumi.Input['QueryDefinitionQueryLanguage']] = None, query_string: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -87,6 +105,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] log_group_names: Optionally define specific log groups as part of your query definition :param pulumi.Input[str] name: A name for the saved query definition + :param pulumi.Input['QueryDefinitionQueryLanguage'] query_language: Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. :param pulumi.Input[str] query_string: The query string to use for this definition """ ... @@ -115,6 +134,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, log_group_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, name: Optional[pulumi.Input[str]] = None, + query_language: Optional[pulumi.Input['QueryDefinitionQueryLanguage']] = None, query_string: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -127,6 +147,7 @@ def _internal_init(__self__, __props__.__dict__["log_group_names"] = log_group_names __props__.__dict__["name"] = name + __props__.__dict__["query_language"] = query_language if query_string is None and not opts.urn: raise TypeError("Missing required property 'query_string'") __props__.__dict__["query_string"] = query_string @@ -156,6 +177,7 @@ def get(resource_name: str, __props__.__dict__["log_group_names"] = None __props__.__dict__["name"] = None __props__.__dict__["query_definition_id"] = None + __props__.__dict__["query_language"] = None __props__.__dict__["query_string"] = None return QueryDefinition(resource_name, opts=opts, __props__=__props__) @@ -183,6 +205,14 @@ def query_definition_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "query_definition_id") + @property + @pulumi.getter(name="queryLanguage") + def query_language(self) -> pulumi.Output[Optional['QueryDefinitionQueryLanguage']]: + """ + Query language of the query string. Possible values are CWLI, SQL, PPL, with CWLI being the default. + """ + return pulumi.get(self, "query_language") + @property @pulumi.getter(name="queryString") def query_string(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/logs/subscription_filter.py b/sdk/python/pulumi_aws_native/logs/subscription_filter.py index 68cad0ce48..9dd27d254b 100644 --- a/sdk/python/pulumi_aws_native/logs/subscription_filter.py +++ b/sdk/python/pulumi_aws_native/logs/subscription_filter.py @@ -23,6 +23,7 @@ def __init__(__self__, *, destination_arn: pulumi.Input[str], filter_pattern: pulumi.Input[str], log_group_name: pulumi.Input[str], + apply_on_transformed_logs: Optional[pulumi.Input[bool]] = None, distribution: Optional[pulumi.Input['SubscriptionFilterDistribution']] = None, filter_name: Optional[pulumi.Input[str]] = None, role_arn: Optional[pulumi.Input[str]] = None): @@ -31,6 +32,9 @@ def __init__(__self__, *, :param pulumi.Input[str] destination_arn: The Amazon Resource Name (ARN) of the destination. :param pulumi.Input[str] filter_pattern: 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). :param pulumi.Input[str] log_group_name: 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. + :param pulumi.Input[bool] apply_on_transformed_logs: This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. :param pulumi.Input['SubscriptionFilterDistribution'] distribution: The method used to distribute log data to the destination, which can be either random or grouped by log stream. :param pulumi.Input[str] filter_name: The name of the subscription filter. :param pulumi.Input[str] role_arn: 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. @@ -38,6 +42,8 @@ def __init__(__self__, *, pulumi.set(__self__, "destination_arn", destination_arn) pulumi.set(__self__, "filter_pattern", filter_pattern) pulumi.set(__self__, "log_group_name", log_group_name) + if apply_on_transformed_logs is not None: + pulumi.set(__self__, "apply_on_transformed_logs", apply_on_transformed_logs) if distribution is not None: pulumi.set(__self__, "distribution", distribution) if filter_name is not None: @@ -81,6 +87,20 @@ def log_group_name(self) -> pulumi.Input[str]: def log_group_name(self, value: pulumi.Input[str]): pulumi.set(self, "log_group_name", value) + @property + @pulumi.getter(name="applyOnTransformedLogs") + def apply_on_transformed_logs(self) -> Optional[pulumi.Input[bool]]: + """ + This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + """ + return pulumi.get(self, "apply_on_transformed_logs") + + @apply_on_transformed_logs.setter + def apply_on_transformed_logs(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "apply_on_transformed_logs", value) + @property @pulumi.getter def distribution(self) -> Optional[pulumi.Input['SubscriptionFilterDistribution']]: @@ -123,6 +143,7 @@ class SubscriptionFilter(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + apply_on_transformed_logs: Optional[pulumi.Input[bool]] = None, destination_arn: Optional[pulumi.Input[str]] = None, distribution: Optional[pulumi.Input['SubscriptionFilterDistribution']] = None, filter_name: Optional[pulumi.Input[str]] = None, @@ -141,6 +162,9 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[bool] apply_on_transformed_logs: This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. :param pulumi.Input[str] destination_arn: The Amazon Resource Name (ARN) of the destination. :param pulumi.Input['SubscriptionFilterDistribution'] distribution: The method used to distribute log data to the destination, which can be either random or grouped by log stream. :param pulumi.Input[str] filter_name: The name of the subscription filter. @@ -178,6 +202,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + apply_on_transformed_logs: Optional[pulumi.Input[bool]] = None, destination_arn: Optional[pulumi.Input[str]] = None, distribution: Optional[pulumi.Input['SubscriptionFilterDistribution']] = None, filter_name: Optional[pulumi.Input[str]] = None, @@ -193,6 +218,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = SubscriptionFilterArgs.__new__(SubscriptionFilterArgs) + __props__.__dict__["apply_on_transformed_logs"] = apply_on_transformed_logs if destination_arn is None and not opts.urn: raise TypeError("Missing required property 'destination_arn'") __props__.__dict__["destination_arn"] = destination_arn @@ -229,6 +255,7 @@ def get(resource_name: str, __props__ = SubscriptionFilterArgs.__new__(SubscriptionFilterArgs) + __props__.__dict__["apply_on_transformed_logs"] = None __props__.__dict__["destination_arn"] = None __props__.__dict__["distribution"] = None __props__.__dict__["filter_name"] = None @@ -237,6 +264,16 @@ def get(resource_name: str, __props__.__dict__["role_arn"] = None return SubscriptionFilter(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="applyOnTransformedLogs") + def apply_on_transformed_logs(self) -> pulumi.Output[Optional[bool]]: + """ + This parameter is valid only for log groups that have an active log transformer. For more information about log transformers, see [PutTransformer](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html) . + + If this value is `true` , the subscription filter is applied on the transformed version of the log events instead of the original ingested log events. + """ + return pulumi.get(self, "apply_on_transformed_logs") + @property @pulumi.getter(name="destinationArn") def destination_arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/logs/transformer.py b/sdk/python/pulumi_aws_native/logs/transformer.py new file mode 100644 index 0000000000..214be87d5c --- /dev/null +++ b/sdk/python/pulumi_aws_native/logs/transformer.py @@ -0,0 +1,160 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['TransformerArgs', 'Transformer'] + +@pulumi.input_type +class TransformerArgs: + def __init__(__self__, *, + log_group_identifier: pulumi.Input[str], + transformer_config: pulumi.Input[Sequence[pulumi.Input['TransformerProcessorArgs']]]): + """ + The set of arguments for constructing a Transformer resource. + :param pulumi.Input[str] log_group_identifier: Existing log group that you want to associate with this transformer. + :param pulumi.Input[Sequence[pulumi.Input['TransformerProcessorArgs']]] transformer_config: List of processors in a transformer + """ + pulumi.set(__self__, "log_group_identifier", log_group_identifier) + pulumi.set(__self__, "transformer_config", transformer_config) + + @property + @pulumi.getter(name="logGroupIdentifier") + def log_group_identifier(self) -> pulumi.Input[str]: + """ + Existing log group that you want to associate with this transformer. + """ + return pulumi.get(self, "log_group_identifier") + + @log_group_identifier.setter + def log_group_identifier(self, value: pulumi.Input[str]): + pulumi.set(self, "log_group_identifier", value) + + @property + @pulumi.getter(name="transformerConfig") + def transformer_config(self) -> pulumi.Input[Sequence[pulumi.Input['TransformerProcessorArgs']]]: + """ + List of processors in a transformer + """ + return pulumi.get(self, "transformer_config") + + @transformer_config.setter + def transformer_config(self, value: pulumi.Input[Sequence[pulumi.Input['TransformerProcessorArgs']]]): + pulumi.set(self, "transformer_config", value) + + +class Transformer(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + log_group_identifier: Optional[pulumi.Input[str]] = None, + transformer_config: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TransformerProcessorArgs', 'TransformerProcessorArgsDict']]]]] = None, + __props__=None): + """ + Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] log_group_identifier: Existing log group that you want to associate with this transformer. + :param pulumi.Input[Sequence[pulumi.Input[Union['TransformerProcessorArgs', 'TransformerProcessorArgsDict']]]] transformer_config: List of processors in a transformer + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: TransformerArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Specifies a transformer on the log group to transform logs into consistent structured and information rich format. + + :param str resource_name: The name of the resource. + :param TransformerArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(TransformerArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + log_group_identifier: Optional[pulumi.Input[str]] = None, + transformer_config: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TransformerProcessorArgs', 'TransformerProcessorArgsDict']]]]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = TransformerArgs.__new__(TransformerArgs) + + if log_group_identifier is None and not opts.urn: + raise TypeError("Missing required property 'log_group_identifier'") + __props__.__dict__["log_group_identifier"] = log_group_identifier + if transformer_config is None and not opts.urn: + raise TypeError("Missing required property 'transformer_config'") + __props__.__dict__["transformer_config"] = transformer_config + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["logGroupIdentifier"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(Transformer, __self__).__init__( + 'aws-native:logs:Transformer', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'Transformer': + """ + Get an existing Transformer resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = TransformerArgs.__new__(TransformerArgs) + + __props__.__dict__["log_group_identifier"] = None + __props__.__dict__["transformer_config"] = None + return Transformer(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="logGroupIdentifier") + def log_group_identifier(self) -> pulumi.Output[str]: + """ + Existing log group that you want to associate with this transformer. + """ + return pulumi.get(self, "log_group_identifier") + + @property + @pulumi.getter(name="transformerConfig") + def transformer_config(self) -> pulumi.Output[Sequence['outputs.TransformerProcessor']]: + """ + List of processors in a transformer + """ + return pulumi.get(self, "transformer_config") + diff --git a/sdk/python/pulumi_aws_native/m2/_enums.py b/sdk/python/pulumi_aws_native/m2/_enums.py index 25e749b148..195bc60306 100644 --- a/sdk/python/pulumi_aws_native/m2/_enums.py +++ b/sdk/python/pulumi_aws_native/m2/_enums.py @@ -7,6 +7,7 @@ __all__ = [ 'ApplicationEngineType', 'EnvironmentEngineType', + 'EnvironmentNetworkType', ] @@ -21,3 +22,8 @@ class EnvironmentEngineType(str, Enum): """ MICROFOCUS = "microfocus" BLUAGE = "bluage" + + +class EnvironmentNetworkType(str, Enum): + IPV4 = "ipv4" + DUAL = "dual" diff --git a/sdk/python/pulumi_aws_native/m2/environment.py b/sdk/python/pulumi_aws_native/m2/environment.py index dcee20ff32..8df1b9199e 100644 --- a/sdk/python/pulumi_aws_native/m2/environment.py +++ b/sdk/python/pulumi_aws_native/m2/environment.py @@ -29,6 +29,7 @@ def __init__(__self__, *, high_availability_config: Optional[pulumi.Input['EnvironmentHighAvailabilityConfigArgs']] = None, kms_key_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, + network_type: Optional[pulumi.Input['EnvironmentNetworkType']] = None, preferred_maintenance_window: Optional[pulumi.Input[str]] = None, publicly_accessible: Optional[pulumi.Input[bool]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -63,6 +64,8 @@ def __init__(__self__, *, pulumi.set(__self__, "kms_key_id", kms_key_id) if name is not None: pulumi.set(__self__, "name", name) + if network_type is not None: + pulumi.set(__self__, "network_type", network_type) if preferred_maintenance_window is not None: pulumi.set(__self__, "preferred_maintenance_window", preferred_maintenance_window) if publicly_accessible is not None: @@ -160,6 +163,15 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) + @property + @pulumi.getter(name="networkType") + def network_type(self) -> Optional[pulumi.Input['EnvironmentNetworkType']]: + return pulumi.get(self, "network_type") + + @network_type.setter + def network_type(self, value: Optional[pulumi.Input['EnvironmentNetworkType']]): + pulumi.set(self, "network_type", value) + @property @pulumi.getter(name="preferredMaintenanceWindow") def preferred_maintenance_window(self) -> Optional[pulumi.Input[str]]: @@ -245,6 +257,7 @@ def __init__(__self__, instance_type: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, + network_type: Optional[pulumi.Input['EnvironmentNetworkType']] = None, preferred_maintenance_window: Optional[pulumi.Input[str]] = None, publicly_accessible: Optional[pulumi.Input[bool]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -302,6 +315,7 @@ def _internal_init(__self__, instance_type: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, + network_type: Optional[pulumi.Input['EnvironmentNetworkType']] = None, preferred_maintenance_window: Optional[pulumi.Input[str]] = None, publicly_accessible: Optional[pulumi.Input[bool]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -328,6 +342,7 @@ def _internal_init(__self__, __props__.__dict__["instance_type"] = instance_type __props__.__dict__["kms_key_id"] = kms_key_id __props__.__dict__["name"] = name + __props__.__dict__["network_type"] = network_type __props__.__dict__["preferred_maintenance_window"] = preferred_maintenance_window __props__.__dict__["publicly_accessible"] = publicly_accessible __props__.__dict__["security_group_ids"] = security_group_ids @@ -336,7 +351,7 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["environment_arn"] = None __props__.__dict__["environment_id"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["description", "engineType", "kmsKeyId", "name", "publiclyAccessible", "securityGroupIds[*]", "storageConfigurations[*]", "subnetIds[*]"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["description", "engineType", "kmsKeyId", "name", "networkType", "publiclyAccessible", "securityGroupIds[*]", "storageConfigurations[*]", "subnetIds[*]"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Environment, __self__).__init__( 'aws-native:m2:Environment', @@ -369,6 +384,7 @@ def get(resource_name: str, __props__.__dict__["instance_type"] = None __props__.__dict__["kms_key_id"] = None __props__.__dict__["name"] = None + __props__.__dict__["network_type"] = None __props__.__dict__["preferred_maintenance_window"] = None __props__.__dict__["publicly_accessible"] = None __props__.__dict__["security_group_ids"] = None @@ -449,6 +465,11 @@ def name(self) -> pulumi.Output[str]: """ return pulumi.get(self, "name") + @property + @pulumi.getter(name="networkType") + def network_type(self) -> pulumi.Output[Optional['EnvironmentNetworkType']]: + return pulumi.get(self, "network_type") + @property @pulumi.getter(name="preferredMaintenanceWindow") def preferred_maintenance_window(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/msk/replicator.py b/sdk/python/pulumi_aws_native/msk/replicator.py index d8222eafea..a93b28c0d0 100644 --- a/sdk/python/pulumi_aws_native/msk/replicator.py +++ b/sdk/python/pulumi_aws_native/msk/replicator.py @@ -218,7 +218,7 @@ def _internal_init(__self__, __props__.__dict__["service_execution_role_arn"] = service_execution_role_arn __props__.__dict__["tags"] = tags __props__.__dict__["replicator_arn"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["description", "kafkaClusters[*]", "replicatorName", "serviceExecutionRoleArn"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["description", "kafkaClusters[*]", "replicationInfoList[*].sourceKafkaClusterArn", "replicationInfoList[*].targetCompressionType", "replicationInfoList[*].targetKafkaClusterArn", "replicationInfoList[*].topicReplication.startingPosition", "replicationInfoList[*].topicReplication.topicNameConfiguration", "replicatorName", "serviceExecutionRoleArn"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Replicator, __self__).__init__( 'aws-native:msk:Replicator', diff --git a/sdk/python/pulumi_aws_native/networkmanager/__init__.py b/sdk/python/pulumi_aws_native/networkmanager/__init__.py index 9d68d6304e..3423e89894 100644 --- a/sdk/python/pulumi_aws_native/networkmanager/__init__.py +++ b/sdk/python/pulumi_aws_native/networkmanager/__init__.py @@ -10,10 +10,12 @@ from .core_network import * from .customer_gateway_association import * from .device import * +from .direct_connect_gateway_attachment import * from .get_connect_attachment import * from .get_connect_peer import * from .get_core_network import * from .get_device import * +from .get_direct_connect_gateway_attachment import * from .get_global_network import * from .get_link import * from .get_site import * diff --git a/sdk/python/pulumi_aws_native/networkmanager/_inputs.py b/sdk/python/pulumi_aws_native/networkmanager/_inputs.py index 329db3db0c..abd75cdfee 100644 --- a/sdk/python/pulumi_aws_native/networkmanager/_inputs.py +++ b/sdk/python/pulumi_aws_native/networkmanager/_inputs.py @@ -29,6 +29,12 @@ 'DeviceAwsLocationArgsDict', 'DeviceLocationArgs', 'DeviceLocationArgsDict', + 'DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs', + 'DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgsDict', + 'DirectConnectGatewayAttachmentProposedSegmentChangeArgs', + 'DirectConnectGatewayAttachmentProposedSegmentChangeArgsDict', + 'DirectConnectGatewayAttachmentTagArgs', + 'DirectConnectGatewayAttachmentTagArgsDict', 'LinkBandwidthArgs', 'LinkBandwidthArgsDict', 'SiteLocationArgs', @@ -467,6 +473,212 @@ def longitude(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "longitude", value) +if not MYPY: + class DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgsDict(TypedDict): + """ + The attachment to move from one network function group to another. + """ + attachment_policy_rule_number: NotRequired[pulumi.Input[int]] + """ + The rule number in the policy document that applies to this change. + """ + network_function_group_name: NotRequired[pulumi.Input[str]] + """ + The name of the network function group to change. + """ + tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgsDict']]]] + """ + The key-value tags that changed for the network function group. + """ +elif False: + DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs: + def __init__(__self__, *, + attachment_policy_rule_number: Optional[pulumi.Input[int]] = None, + network_function_group_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]]] = None): + """ + The attachment to move from one network function group to another. + :param pulumi.Input[int] attachment_policy_rule_number: The rule number in the policy document that applies to this change. + :param pulumi.Input[str] network_function_group_name: The name of the network function group to change. + :param pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]] tags: The key-value tags that changed for the network function group. + """ + if attachment_policy_rule_number is not None: + pulumi.set(__self__, "attachment_policy_rule_number", attachment_policy_rule_number) + if network_function_group_name is not None: + pulumi.set(__self__, "network_function_group_name", network_function_group_name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="attachmentPolicyRuleNumber") + def attachment_policy_rule_number(self) -> Optional[pulumi.Input[int]]: + """ + The rule number in the policy document that applies to this change. + """ + return pulumi.get(self, "attachment_policy_rule_number") + + @attachment_policy_rule_number.setter + def attachment_policy_rule_number(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "attachment_policy_rule_number", value) + + @property + @pulumi.getter(name="networkFunctionGroupName") + def network_function_group_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the network function group to change. + """ + return pulumi.get(self, "network_function_group_name") + + @network_function_group_name.setter + def network_function_group_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "network_function_group_name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]]]: + """ + The key-value tags that changed for the network function group. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]]]): + pulumi.set(self, "tags", value) + + +if not MYPY: + class DirectConnectGatewayAttachmentProposedSegmentChangeArgsDict(TypedDict): + """ + The attachment to move from one segment to another. + """ + attachment_policy_rule_number: NotRequired[pulumi.Input[int]] + """ + The rule number in the policy document that applies to this change. + """ + segment_name: NotRequired[pulumi.Input[str]] + """ + The name of the segment to change. + """ + tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgsDict']]]] + """ + The key-value tags that changed for the segment. + """ +elif False: + DirectConnectGatewayAttachmentProposedSegmentChangeArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DirectConnectGatewayAttachmentProposedSegmentChangeArgs: + def __init__(__self__, *, + attachment_policy_rule_number: Optional[pulumi.Input[int]] = None, + segment_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]]] = None): + """ + The attachment to move from one segment to another. + :param pulumi.Input[int] attachment_policy_rule_number: The rule number in the policy document that applies to this change. + :param pulumi.Input[str] segment_name: The name of the segment to change. + :param pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]] tags: The key-value tags that changed for the segment. + """ + if attachment_policy_rule_number is not None: + pulumi.set(__self__, "attachment_policy_rule_number", attachment_policy_rule_number) + if segment_name is not None: + pulumi.set(__self__, "segment_name", segment_name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="attachmentPolicyRuleNumber") + def attachment_policy_rule_number(self) -> Optional[pulumi.Input[int]]: + """ + The rule number in the policy document that applies to this change. + """ + return pulumi.get(self, "attachment_policy_rule_number") + + @attachment_policy_rule_number.setter + def attachment_policy_rule_number(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "attachment_policy_rule_number", value) + + @property + @pulumi.getter(name="segmentName") + def segment_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the segment to change. + """ + return pulumi.get(self, "segment_name") + + @segment_name.setter + def segment_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "segment_name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]]]: + """ + The key-value tags that changed for the segment. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DirectConnectGatewayAttachmentTagArgs']]]]): + pulumi.set(self, "tags", value) + + +if not MYPY: + class DirectConnectGatewayAttachmentTagArgsDict(TypedDict): + """ + A key-value pair to associate with a resource. + """ + key: pulumi.Input[str] + """ + 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: pulumi.Input[str] + """ + 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 -. + """ +elif False: + DirectConnectGatewayAttachmentTagArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DirectConnectGatewayAttachmentTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + """ + A key-value pair to associate with a resource. + :param pulumi.Input[str] key: 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 -. + :param pulumi.Input[str] value: 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 -. + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + """ + 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 -. + """ + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + """ + 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 -. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + if not MYPY: class LinkBandwidthArgsDict(TypedDict): """ diff --git a/sdk/python/pulumi_aws_native/networkmanager/direct_connect_gateway_attachment.py b/sdk/python/pulumi_aws_native/networkmanager/direct_connect_gateway_attachment.py new file mode 100644 index 0000000000..a001e426bf --- /dev/null +++ b/sdk/python/pulumi_aws_native/networkmanager/direct_connect_gateway_attachment.py @@ -0,0 +1,388 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from .. import _inputs as _root_inputs +from .. import outputs as _root_outputs +from ._inputs import * + +__all__ = ['DirectConnectGatewayAttachmentArgs', 'DirectConnectGatewayAttachment'] + +@pulumi.input_type +class DirectConnectGatewayAttachmentArgs: + def __init__(__self__, *, + core_network_id: pulumi.Input[str], + direct_connect_gateway_arn: pulumi.Input[str], + edge_locations: pulumi.Input[Sequence[pulumi.Input[str]]], + proposed_network_function_group_change: Optional[pulumi.Input['DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs']] = None, + proposed_segment_change: Optional[pulumi.Input['DirectConnectGatewayAttachmentProposedSegmentChangeArgs']] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): + """ + The set of arguments for constructing a DirectConnectGatewayAttachment resource. + :param pulumi.Input[str] core_network_id: The ID of a core network for the Direct Connect Gateway attachment. + :param pulumi.Input[str] direct_connect_gateway_arn: The ARN of the Direct Connect Gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] edge_locations: The Regions where the edges are located. + :param pulumi.Input['DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs'] proposed_network_function_group_change: The attachment to move from one network function group to another. + :param pulumi.Input['DirectConnectGatewayAttachmentProposedSegmentChangeArgs'] proposed_segment_change: The attachment to move from one segment to another. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: Tags for the attachment. + """ + pulumi.set(__self__, "core_network_id", core_network_id) + pulumi.set(__self__, "direct_connect_gateway_arn", direct_connect_gateway_arn) + pulumi.set(__self__, "edge_locations", edge_locations) + if proposed_network_function_group_change is not None: + pulumi.set(__self__, "proposed_network_function_group_change", proposed_network_function_group_change) + if proposed_segment_change is not None: + pulumi.set(__self__, "proposed_segment_change", proposed_segment_change) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="coreNetworkId") + def core_network_id(self) -> pulumi.Input[str]: + """ + The ID of a core network for the Direct Connect Gateway attachment. + """ + return pulumi.get(self, "core_network_id") + + @core_network_id.setter + def core_network_id(self, value: pulumi.Input[str]): + pulumi.set(self, "core_network_id", value) + + @property + @pulumi.getter(name="directConnectGatewayArn") + def direct_connect_gateway_arn(self) -> pulumi.Input[str]: + """ + The ARN of the Direct Connect Gateway. + """ + return pulumi.get(self, "direct_connect_gateway_arn") + + @direct_connect_gateway_arn.setter + def direct_connect_gateway_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "direct_connect_gateway_arn", value) + + @property + @pulumi.getter(name="edgeLocations") + def edge_locations(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + The Regions where the edges are located. + """ + return pulumi.get(self, "edge_locations") + + @edge_locations.setter + def edge_locations(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "edge_locations", value) + + @property + @pulumi.getter(name="proposedNetworkFunctionGroupChange") + def proposed_network_function_group_change(self) -> Optional[pulumi.Input['DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs']]: + """ + The attachment to move from one network function group to another. + """ + return pulumi.get(self, "proposed_network_function_group_change") + + @proposed_network_function_group_change.setter + def proposed_network_function_group_change(self, value: Optional[pulumi.Input['DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs']]): + pulumi.set(self, "proposed_network_function_group_change", value) + + @property + @pulumi.getter(name="proposedSegmentChange") + def proposed_segment_change(self) -> Optional[pulumi.Input['DirectConnectGatewayAttachmentProposedSegmentChangeArgs']]: + """ + The attachment to move from one segment to another. + """ + return pulumi.get(self, "proposed_segment_change") + + @proposed_segment_change.setter + def proposed_segment_change(self, value: Optional[pulumi.Input['DirectConnectGatewayAttachmentProposedSegmentChangeArgs']]): + pulumi.set(self, "proposed_segment_change", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: + """ + Tags for the attachment. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]): + pulumi.set(self, "tags", value) + + +class DirectConnectGatewayAttachment(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + core_network_id: Optional[pulumi.Input[str]] = None, + direct_connect_gateway_arn: Optional[pulumi.Input[str]] = None, + edge_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + proposed_network_function_group_change: Optional[pulumi.Input[Union['DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs', 'DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgsDict']]] = None, + proposed_segment_change: Optional[pulumi.Input[Union['DirectConnectGatewayAttachmentProposedSegmentChangeArgs', 'DirectConnectGatewayAttachmentProposedSegmentChangeArgsDict']]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, + __props__=None): + """ + AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] core_network_id: The ID of a core network for the Direct Connect Gateway attachment. + :param pulumi.Input[str] direct_connect_gateway_arn: The ARN of the Direct Connect Gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] edge_locations: The Regions where the edges are located. + :param pulumi.Input[Union['DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs', 'DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgsDict']] proposed_network_function_group_change: The attachment to move from one network function group to another. + :param pulumi.Input[Union['DirectConnectGatewayAttachmentProposedSegmentChangeArgs', 'DirectConnectGatewayAttachmentProposedSegmentChangeArgsDict']] proposed_segment_change: The attachment to move from one segment to another. + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: Tags for the attachment. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: DirectConnectGatewayAttachmentArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + + :param str resource_name: The name of the resource. + :param DirectConnectGatewayAttachmentArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(DirectConnectGatewayAttachmentArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + core_network_id: Optional[pulumi.Input[str]] = None, + direct_connect_gateway_arn: Optional[pulumi.Input[str]] = None, + edge_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + proposed_network_function_group_change: Optional[pulumi.Input[Union['DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgs', 'DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChangeArgsDict']]] = None, + proposed_segment_change: Optional[pulumi.Input[Union['DirectConnectGatewayAttachmentProposedSegmentChangeArgs', 'DirectConnectGatewayAttachmentProposedSegmentChangeArgsDict']]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = DirectConnectGatewayAttachmentArgs.__new__(DirectConnectGatewayAttachmentArgs) + + if core_network_id is None and not opts.urn: + raise TypeError("Missing required property 'core_network_id'") + __props__.__dict__["core_network_id"] = core_network_id + if direct_connect_gateway_arn is None and not opts.urn: + raise TypeError("Missing required property 'direct_connect_gateway_arn'") + __props__.__dict__["direct_connect_gateway_arn"] = direct_connect_gateway_arn + if edge_locations is None and not opts.urn: + raise TypeError("Missing required property 'edge_locations'") + __props__.__dict__["edge_locations"] = edge_locations + __props__.__dict__["proposed_network_function_group_change"] = proposed_network_function_group_change + __props__.__dict__["proposed_segment_change"] = proposed_segment_change + __props__.__dict__["tags"] = tags + __props__.__dict__["attachment_id"] = None + __props__.__dict__["attachment_policy_rule_number"] = None + __props__.__dict__["attachment_type"] = None + __props__.__dict__["core_network_arn"] = None + __props__.__dict__["created_at"] = None + __props__.__dict__["network_function_group_name"] = None + __props__.__dict__["owner_account_id"] = None + __props__.__dict__["resource_arn"] = None + __props__.__dict__["segment_name"] = None + __props__.__dict__["state"] = None + __props__.__dict__["updated_at"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["coreNetworkId", "directConnectGatewayArn"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(DirectConnectGatewayAttachment, __self__).__init__( + 'aws-native:networkmanager:DirectConnectGatewayAttachment', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'DirectConnectGatewayAttachment': + """ + Get an existing DirectConnectGatewayAttachment resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = DirectConnectGatewayAttachmentArgs.__new__(DirectConnectGatewayAttachmentArgs) + + __props__.__dict__["attachment_id"] = None + __props__.__dict__["attachment_policy_rule_number"] = None + __props__.__dict__["attachment_type"] = None + __props__.__dict__["core_network_arn"] = None + __props__.__dict__["core_network_id"] = None + __props__.__dict__["created_at"] = None + __props__.__dict__["direct_connect_gateway_arn"] = None + __props__.__dict__["edge_locations"] = None + __props__.__dict__["network_function_group_name"] = None + __props__.__dict__["owner_account_id"] = None + __props__.__dict__["proposed_network_function_group_change"] = None + __props__.__dict__["proposed_segment_change"] = None + __props__.__dict__["resource_arn"] = None + __props__.__dict__["segment_name"] = None + __props__.__dict__["state"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["updated_at"] = None + return DirectConnectGatewayAttachment(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="attachmentId") + def attachment_id(self) -> pulumi.Output[str]: + """ + Id of the attachment. + """ + return pulumi.get(self, "attachment_id") + + @property + @pulumi.getter(name="attachmentPolicyRuleNumber") + def attachment_policy_rule_number(self) -> pulumi.Output[int]: + """ + The policy rule number associated with the attachment. + """ + return pulumi.get(self, "attachment_policy_rule_number") + + @property + @pulumi.getter(name="attachmentType") + def attachment_type(self) -> pulumi.Output[str]: + """ + Attachment type. + """ + return pulumi.get(self, "attachment_type") + + @property + @pulumi.getter(name="coreNetworkArn") + def core_network_arn(self) -> pulumi.Output[str]: + """ + The ARN of a core network for the Direct Connect Gateway attachment. + """ + return pulumi.get(self, "core_network_arn") + + @property + @pulumi.getter(name="coreNetworkId") + def core_network_id(self) -> pulumi.Output[str]: + """ + The ID of a core network for the Direct Connect Gateway attachment. + """ + return pulumi.get(self, "core_network_id") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + """ + Creation time of the attachment. + """ + return pulumi.get(self, "created_at") + + @property + @pulumi.getter(name="directConnectGatewayArn") + def direct_connect_gateway_arn(self) -> pulumi.Output[str]: + """ + The ARN of the Direct Connect Gateway. + """ + return pulumi.get(self, "direct_connect_gateway_arn") + + @property + @pulumi.getter(name="edgeLocations") + def edge_locations(self) -> pulumi.Output[Sequence[str]]: + """ + The Regions where the edges are located. + """ + return pulumi.get(self, "edge_locations") + + @property + @pulumi.getter(name="networkFunctionGroupName") + def network_function_group_name(self) -> pulumi.Output[str]: + """ + The name of the network function group attachment. + """ + return pulumi.get(self, "network_function_group_name") + + @property + @pulumi.getter(name="ownerAccountId") + def owner_account_id(self) -> pulumi.Output[str]: + """ + Owner account of the attachment. + """ + return pulumi.get(self, "owner_account_id") + + @property + @pulumi.getter(name="proposedNetworkFunctionGroupChange") + def proposed_network_function_group_change(self) -> pulumi.Output[Optional['outputs.DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange']]: + """ + The attachment to move from one network function group to another. + """ + return pulumi.get(self, "proposed_network_function_group_change") + + @property + @pulumi.getter(name="proposedSegmentChange") + def proposed_segment_change(self) -> pulumi.Output[Optional['outputs.DirectConnectGatewayAttachmentProposedSegmentChange']]: + """ + The attachment to move from one segment to another. + """ + return pulumi.get(self, "proposed_segment_change") + + @property + @pulumi.getter(name="resourceArn") + def resource_arn(self) -> pulumi.Output[str]: + """ + The ARN of the Resource. + """ + return pulumi.get(self, "resource_arn") + + @property + @pulumi.getter(name="segmentName") + def segment_name(self) -> pulumi.Output[str]: + """ + The name of the segment attachment.. + """ + return pulumi.get(self, "segment_name") + + @property + @pulumi.getter + def state(self) -> pulumi.Output[str]: + """ + State of the attachment. + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: + """ + Tags for the attachment. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="updatedAt") + def updated_at(self) -> pulumi.Output[str]: + """ + Last update time of the attachment. + """ + return pulumi.get(self, "updated_at") + diff --git a/sdk/python/pulumi_aws_native/networkmanager/get_direct_connect_gateway_attachment.py b/sdk/python/pulumi_aws_native/networkmanager/get_direct_connect_gateway_attachment.py new file mode 100644 index 0000000000..8a7c40c376 --- /dev/null +++ b/sdk/python/pulumi_aws_native/networkmanager/get_direct_connect_gateway_attachment.py @@ -0,0 +1,275 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from .. import outputs as _root_outputs + +__all__ = [ + 'GetDirectConnectGatewayAttachmentResult', + 'AwaitableGetDirectConnectGatewayAttachmentResult', + 'get_direct_connect_gateway_attachment', + 'get_direct_connect_gateway_attachment_output', +] + +@pulumi.output_type +class GetDirectConnectGatewayAttachmentResult: + def __init__(__self__, attachment_id=None, attachment_policy_rule_number=None, attachment_type=None, core_network_arn=None, created_at=None, edge_locations=None, network_function_group_name=None, owner_account_id=None, proposed_network_function_group_change=None, proposed_segment_change=None, resource_arn=None, segment_name=None, state=None, tags=None, updated_at=None): + if attachment_id and not isinstance(attachment_id, str): + raise TypeError("Expected argument 'attachment_id' to be a str") + pulumi.set(__self__, "attachment_id", attachment_id) + if attachment_policy_rule_number and not isinstance(attachment_policy_rule_number, int): + raise TypeError("Expected argument 'attachment_policy_rule_number' to be a int") + pulumi.set(__self__, "attachment_policy_rule_number", attachment_policy_rule_number) + if attachment_type and not isinstance(attachment_type, str): + raise TypeError("Expected argument 'attachment_type' to be a str") + pulumi.set(__self__, "attachment_type", attachment_type) + if core_network_arn and not isinstance(core_network_arn, str): + raise TypeError("Expected argument 'core_network_arn' to be a str") + pulumi.set(__self__, "core_network_arn", core_network_arn) + if created_at and not isinstance(created_at, str): + raise TypeError("Expected argument 'created_at' to be a str") + pulumi.set(__self__, "created_at", created_at) + if edge_locations and not isinstance(edge_locations, list): + raise TypeError("Expected argument 'edge_locations' to be a list") + pulumi.set(__self__, "edge_locations", edge_locations) + if network_function_group_name and not isinstance(network_function_group_name, str): + raise TypeError("Expected argument 'network_function_group_name' to be a str") + pulumi.set(__self__, "network_function_group_name", network_function_group_name) + if owner_account_id and not isinstance(owner_account_id, str): + raise TypeError("Expected argument 'owner_account_id' to be a str") + pulumi.set(__self__, "owner_account_id", owner_account_id) + if proposed_network_function_group_change and not isinstance(proposed_network_function_group_change, dict): + raise TypeError("Expected argument 'proposed_network_function_group_change' to be a dict") + pulumi.set(__self__, "proposed_network_function_group_change", proposed_network_function_group_change) + if proposed_segment_change and not isinstance(proposed_segment_change, dict): + raise TypeError("Expected argument 'proposed_segment_change' to be a dict") + pulumi.set(__self__, "proposed_segment_change", proposed_segment_change) + if resource_arn and not isinstance(resource_arn, str): + raise TypeError("Expected argument 'resource_arn' to be a str") + pulumi.set(__self__, "resource_arn", resource_arn) + if segment_name and not isinstance(segment_name, str): + raise TypeError("Expected argument 'segment_name' to be a str") + pulumi.set(__self__, "segment_name", segment_name) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) + if updated_at and not isinstance(updated_at, str): + raise TypeError("Expected argument 'updated_at' to be a str") + pulumi.set(__self__, "updated_at", updated_at) + + @property + @pulumi.getter(name="attachmentId") + def attachment_id(self) -> Optional[str]: + """ + Id of the attachment. + """ + return pulumi.get(self, "attachment_id") + + @property + @pulumi.getter(name="attachmentPolicyRuleNumber") + def attachment_policy_rule_number(self) -> Optional[int]: + """ + The policy rule number associated with the attachment. + """ + return pulumi.get(self, "attachment_policy_rule_number") + + @property + @pulumi.getter(name="attachmentType") + def attachment_type(self) -> Optional[str]: + """ + Attachment type. + """ + return pulumi.get(self, "attachment_type") + + @property + @pulumi.getter(name="coreNetworkArn") + def core_network_arn(self) -> Optional[str]: + """ + The ARN of a core network for the Direct Connect Gateway attachment. + """ + return pulumi.get(self, "core_network_arn") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[str]: + """ + Creation time of the attachment. + """ + return pulumi.get(self, "created_at") + + @property + @pulumi.getter(name="edgeLocations") + def edge_locations(self) -> Optional[Sequence[str]]: + """ + The Regions where the edges are located. + """ + return pulumi.get(self, "edge_locations") + + @property + @pulumi.getter(name="networkFunctionGroupName") + def network_function_group_name(self) -> Optional[str]: + """ + The name of the network function group attachment. + """ + return pulumi.get(self, "network_function_group_name") + + @property + @pulumi.getter(name="ownerAccountId") + def owner_account_id(self) -> Optional[str]: + """ + Owner account of the attachment. + """ + return pulumi.get(self, "owner_account_id") + + @property + @pulumi.getter(name="proposedNetworkFunctionGroupChange") + def proposed_network_function_group_change(self) -> Optional['outputs.DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange']: + """ + The attachment to move from one network function group to another. + """ + return pulumi.get(self, "proposed_network_function_group_change") + + @property + @pulumi.getter(name="proposedSegmentChange") + def proposed_segment_change(self) -> Optional['outputs.DirectConnectGatewayAttachmentProposedSegmentChange']: + """ + The attachment to move from one segment to another. + """ + return pulumi.get(self, "proposed_segment_change") + + @property + @pulumi.getter(name="resourceArn") + def resource_arn(self) -> Optional[str]: + """ + The ARN of the Resource. + """ + return pulumi.get(self, "resource_arn") + + @property + @pulumi.getter(name="segmentName") + def segment_name(self) -> Optional[str]: + """ + The name of the segment attachment.. + """ + return pulumi.get(self, "segment_name") + + @property + @pulumi.getter + def state(self) -> Optional[str]: + """ + State of the attachment. + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + """ + Tags for the attachment. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="updatedAt") + def updated_at(self) -> Optional[str]: + """ + Last update time of the attachment. + """ + return pulumi.get(self, "updated_at") + + +class AwaitableGetDirectConnectGatewayAttachmentResult(GetDirectConnectGatewayAttachmentResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetDirectConnectGatewayAttachmentResult( + attachment_id=self.attachment_id, + attachment_policy_rule_number=self.attachment_policy_rule_number, + attachment_type=self.attachment_type, + core_network_arn=self.core_network_arn, + created_at=self.created_at, + edge_locations=self.edge_locations, + network_function_group_name=self.network_function_group_name, + owner_account_id=self.owner_account_id, + proposed_network_function_group_change=self.proposed_network_function_group_change, + proposed_segment_change=self.proposed_segment_change, + resource_arn=self.resource_arn, + segment_name=self.segment_name, + state=self.state, + tags=self.tags, + updated_at=self.updated_at) + + +def get_direct_connect_gateway_attachment(attachment_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDirectConnectGatewayAttachmentResult: + """ + AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + + + :param str attachment_id: Id of the attachment. + """ + __args__ = dict() + __args__['attachmentId'] = attachment_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:networkmanager:getDirectConnectGatewayAttachment', __args__, opts=opts, typ=GetDirectConnectGatewayAttachmentResult).value + + return AwaitableGetDirectConnectGatewayAttachmentResult( + attachment_id=pulumi.get(__ret__, 'attachment_id'), + attachment_policy_rule_number=pulumi.get(__ret__, 'attachment_policy_rule_number'), + attachment_type=pulumi.get(__ret__, 'attachment_type'), + core_network_arn=pulumi.get(__ret__, 'core_network_arn'), + created_at=pulumi.get(__ret__, 'created_at'), + edge_locations=pulumi.get(__ret__, 'edge_locations'), + network_function_group_name=pulumi.get(__ret__, 'network_function_group_name'), + owner_account_id=pulumi.get(__ret__, 'owner_account_id'), + proposed_network_function_group_change=pulumi.get(__ret__, 'proposed_network_function_group_change'), + proposed_segment_change=pulumi.get(__ret__, 'proposed_segment_change'), + resource_arn=pulumi.get(__ret__, 'resource_arn'), + segment_name=pulumi.get(__ret__, 'segment_name'), + state=pulumi.get(__ret__, 'state'), + tags=pulumi.get(__ret__, 'tags'), + updated_at=pulumi.get(__ret__, 'updated_at')) +def get_direct_connect_gateway_attachment_output(attachment_id: Optional[pulumi.Input[str]] = None, + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDirectConnectGatewayAttachmentResult]: + """ + AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type + + + :param str attachment_id: Id of the attachment. + """ + __args__ = dict() + __args__['attachmentId'] = attachment_id + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('aws-native:networkmanager:getDirectConnectGatewayAttachment', __args__, opts=opts, typ=GetDirectConnectGatewayAttachmentResult) + return __ret__.apply(lambda __response__: GetDirectConnectGatewayAttachmentResult( + attachment_id=pulumi.get(__response__, 'attachment_id'), + attachment_policy_rule_number=pulumi.get(__response__, 'attachment_policy_rule_number'), + attachment_type=pulumi.get(__response__, 'attachment_type'), + core_network_arn=pulumi.get(__response__, 'core_network_arn'), + created_at=pulumi.get(__response__, 'created_at'), + edge_locations=pulumi.get(__response__, 'edge_locations'), + network_function_group_name=pulumi.get(__response__, 'network_function_group_name'), + owner_account_id=pulumi.get(__response__, 'owner_account_id'), + proposed_network_function_group_change=pulumi.get(__response__, 'proposed_network_function_group_change'), + proposed_segment_change=pulumi.get(__response__, 'proposed_segment_change'), + resource_arn=pulumi.get(__response__, 'resource_arn'), + segment_name=pulumi.get(__response__, 'segment_name'), + state=pulumi.get(__response__, 'state'), + tags=pulumi.get(__response__, 'tags'), + updated_at=pulumi.get(__response__, 'updated_at'))) diff --git a/sdk/python/pulumi_aws_native/networkmanager/outputs.py b/sdk/python/pulumi_aws_native/networkmanager/outputs.py index 83a51415d3..0fadd04574 100644 --- a/sdk/python/pulumi_aws_native/networkmanager/outputs.py +++ b/sdk/python/pulumi_aws_native/networkmanager/outputs.py @@ -29,6 +29,9 @@ 'CoreNetworkSegment', 'DeviceAwsLocation', 'DeviceLocation', + 'DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange', + 'DirectConnectGatewayAttachmentProposedSegmentChange', + 'DirectConnectGatewayAttachmentTag', 'LinkBandwidth', 'SiteLocation', 'SiteToSiteVpnAttachmentProposedNetworkFunctionGroupChange', @@ -772,6 +775,171 @@ def longitude(self) -> Optional[str]: return pulumi.get(self, "longitude") +@pulumi.output_type +class DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange(dict): + """ + The attachment to move from one network function group to another. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "attachmentPolicyRuleNumber": + suggest = "attachment_policy_rule_number" + elif key == "networkFunctionGroupName": + suggest = "network_function_group_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DirectConnectGatewayAttachmentProposedNetworkFunctionGroupChange.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + attachment_policy_rule_number: Optional[int] = None, + network_function_group_name: Optional[str] = None, + tags: Optional[Sequence['outputs.DirectConnectGatewayAttachmentTag']] = None): + """ + The attachment to move from one network function group to another. + :param int attachment_policy_rule_number: The rule number in the policy document that applies to this change. + :param str network_function_group_name: The name of the network function group to change. + :param Sequence['DirectConnectGatewayAttachmentTag'] tags: The key-value tags that changed for the network function group. + """ + if attachment_policy_rule_number is not None: + pulumi.set(__self__, "attachment_policy_rule_number", attachment_policy_rule_number) + if network_function_group_name is not None: + pulumi.set(__self__, "network_function_group_name", network_function_group_name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="attachmentPolicyRuleNumber") + def attachment_policy_rule_number(self) -> Optional[int]: + """ + The rule number in the policy document that applies to this change. + """ + return pulumi.get(self, "attachment_policy_rule_number") + + @property + @pulumi.getter(name="networkFunctionGroupName") + def network_function_group_name(self) -> Optional[str]: + """ + The name of the network function group to change. + """ + return pulumi.get(self, "network_function_group_name") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.DirectConnectGatewayAttachmentTag']]: + """ + The key-value tags that changed for the network function group. + """ + return pulumi.get(self, "tags") + + +@pulumi.output_type +class DirectConnectGatewayAttachmentProposedSegmentChange(dict): + """ + The attachment to move from one segment to another. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "attachmentPolicyRuleNumber": + suggest = "attachment_policy_rule_number" + elif key == "segmentName": + suggest = "segment_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DirectConnectGatewayAttachmentProposedSegmentChange. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DirectConnectGatewayAttachmentProposedSegmentChange.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DirectConnectGatewayAttachmentProposedSegmentChange.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + attachment_policy_rule_number: Optional[int] = None, + segment_name: Optional[str] = None, + tags: Optional[Sequence['outputs.DirectConnectGatewayAttachmentTag']] = None): + """ + The attachment to move from one segment to another. + :param int attachment_policy_rule_number: The rule number in the policy document that applies to this change. + :param str segment_name: The name of the segment to change. + :param Sequence['DirectConnectGatewayAttachmentTag'] tags: The key-value tags that changed for the segment. + """ + if attachment_policy_rule_number is not None: + pulumi.set(__self__, "attachment_policy_rule_number", attachment_policy_rule_number) + if segment_name is not None: + pulumi.set(__self__, "segment_name", segment_name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="attachmentPolicyRuleNumber") + def attachment_policy_rule_number(self) -> Optional[int]: + """ + The rule number in the policy document that applies to this change. + """ + return pulumi.get(self, "attachment_policy_rule_number") + + @property + @pulumi.getter(name="segmentName") + def segment_name(self) -> Optional[str]: + """ + The name of the segment to change. + """ + return pulumi.get(self, "segment_name") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.DirectConnectGatewayAttachmentTag']]: + """ + The key-value tags that changed for the segment. + """ + return pulumi.get(self, "tags") + + +@pulumi.output_type +class DirectConnectGatewayAttachmentTag(dict): + """ + A key-value pair to associate with a resource. + """ + def __init__(__self__, *, + key: str, + value: str): + """ + A key-value pair to associate with a resource. + :param str key: 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 -. + :param str value: 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 -. + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def key(self) -> str: + """ + 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 -. + """ + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + """ + 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 -. + """ + return pulumi.get(self, "value") + + @pulumi.output_type class LinkBandwidth(dict): """ diff --git a/sdk/python/pulumi_aws_native/pipes/_inputs.py b/sdk/python/pulumi_aws_native/pipes/_inputs.py index 522791792d..1612420d8e 100644 --- a/sdk/python/pulumi_aws_native/pipes/_inputs.py +++ b/sdk/python/pulumi_aws_native/pipes/_inputs.py @@ -2262,11 +2262,11 @@ def prefix(self, value: Optional[pulumi.Input[str]]): class PipeSageMakerPipelineParameterArgsDict(TypedDict): name: pulumi.Input[str] """ - Name of parameter to start execution of a SageMaker Model Building Pipeline. + Name of parameter to start execution of a SageMaker AI Model Building Pipeline. """ value: pulumi.Input[str] """ - Value of parameter to start execution of a SageMaker Model Building Pipeline. + Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ elif False: PipeSageMakerPipelineParameterArgsDict: TypeAlias = Mapping[str, Any] @@ -2277,8 +2277,8 @@ def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str]): """ - :param pulumi.Input[str] name: Name of parameter to start execution of a SageMaker Model Building Pipeline. - :param pulumi.Input[str] value: Value of parameter to start execution of a SageMaker Model Building Pipeline. + :param pulumi.Input[str] name: Name of parameter to start execution of a SageMaker AI Model Building Pipeline. + :param pulumi.Input[str] value: Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -2287,7 +2287,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - Name of parameter to start execution of a SageMaker Model Building Pipeline. + Name of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "name") @@ -2299,7 +2299,7 @@ def name(self, value: pulumi.Input[str]): @pulumi.getter def value(self) -> pulumi.Input[str]: """ - Value of parameter to start execution of a SageMaker Model Building Pipeline. + Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "value") @@ -4570,7 +4570,7 @@ class PipeTargetParametersArgsDict(TypedDict): """ sage_maker_pipeline_parameters: NotRequired[pulumi.Input['PipeTargetSageMakerPipelineParametersArgsDict']] """ - The parameters for using a SageMaker pipeline as a target. + The parameters for using a SageMaker AI pipeline as a target. """ sqs_queue_parameters: NotRequired[pulumi.Input['PipeTargetSqsQueueParametersArgsDict']] """ @@ -4615,7 +4615,7 @@ def __init__(__self__, *, :param pulumi.Input['PipeTargetKinesisStreamParametersArgs'] kinesis_stream_parameters: The parameters for using a Kinesis stream as a target. :param pulumi.Input['PipeTargetLambdaFunctionParametersArgs'] lambda_function_parameters: The parameters for using a Lambda function as a target. :param pulumi.Input['PipeTargetRedshiftDataParametersArgs'] redshift_data_parameters: These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API BatchExecuteStatement. - :param pulumi.Input['PipeTargetSageMakerPipelineParametersArgs'] sage_maker_pipeline_parameters: The parameters for using a SageMaker pipeline as a target. + :param pulumi.Input['PipeTargetSageMakerPipelineParametersArgs'] sage_maker_pipeline_parameters: The parameters for using a SageMaker AI pipeline as a target. :param pulumi.Input['PipeTargetSqsQueueParametersArgs'] sqs_queue_parameters: The parameters for using a Amazon SQS stream as a target. :param pulumi.Input['PipeTargetStateMachineParametersArgs'] step_function_state_machine_parameters: The parameters for using a Step Functions state machine as a target. :param pulumi.Input['PipeTargetTimestreamParametersArgs'] timestream_parameters: The parameters for using a Timestream for LiveAnalytics table as a target. @@ -4761,7 +4761,7 @@ def redshift_data_parameters(self, value: Optional[pulumi.Input['PipeTargetRedsh @pulumi.getter(name="sageMakerPipelineParameters") def sage_maker_pipeline_parameters(self) -> Optional[pulumi.Input['PipeTargetSageMakerPipelineParametersArgs']]: """ - The parameters for using a SageMaker pipeline as a target. + The parameters for using a SageMaker AI pipeline as a target. """ return pulumi.get(self, "sage_maker_pipeline_parameters") @@ -4940,7 +4940,7 @@ def with_event(self, value: Optional[pulumi.Input[bool]]): class PipeTargetSageMakerPipelineParametersArgsDict(TypedDict): pipeline_parameter_list: NotRequired[pulumi.Input[Sequence[pulumi.Input['PipeSageMakerPipelineParameterArgsDict']]]] """ - List of Parameter names and values for SageMaker Model Building Pipeline execution. + List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ elif False: PipeTargetSageMakerPipelineParametersArgsDict: TypeAlias = Mapping[str, Any] @@ -4950,7 +4950,7 @@ class PipeTargetSageMakerPipelineParametersArgs: def __init__(__self__, *, pipeline_parameter_list: Optional[pulumi.Input[Sequence[pulumi.Input['PipeSageMakerPipelineParameterArgs']]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input['PipeSageMakerPipelineParameterArgs']]] pipeline_parameter_list: List of Parameter names and values for SageMaker Model Building Pipeline execution. + :param pulumi.Input[Sequence[pulumi.Input['PipeSageMakerPipelineParameterArgs']]] pipeline_parameter_list: List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ if pipeline_parameter_list is not None: pulumi.set(__self__, "pipeline_parameter_list", pipeline_parameter_list) @@ -4959,7 +4959,7 @@ def __init__(__self__, *, @pulumi.getter(name="pipelineParameterList") def pipeline_parameter_list(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PipeSageMakerPipelineParameterArgs']]]]: """ - List of Parameter names and values for SageMaker Model Building Pipeline execution. + List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ return pulumi.get(self, "pipeline_parameter_list") diff --git a/sdk/python/pulumi_aws_native/pipes/outputs.py b/sdk/python/pulumi_aws_native/pipes/outputs.py index 0424b04652..8cb2e4feab 100644 --- a/sdk/python/pulumi_aws_native/pipes/outputs.py +++ b/sdk/python/pulumi_aws_native/pipes/outputs.py @@ -1755,8 +1755,8 @@ def __init__(__self__, *, name: str, value: str): """ - :param str name: Name of parameter to start execution of a SageMaker Model Building Pipeline. - :param str value: Value of parameter to start execution of a SageMaker Model Building Pipeline. + :param str name: Name of parameter to start execution of a SageMaker AI Model Building Pipeline. + :param str value: Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -1765,7 +1765,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - Name of parameter to start execution of a SageMaker Model Building Pipeline. + Name of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "name") @@ -1773,7 +1773,7 @@ def name(self) -> str: @pulumi.getter def value(self) -> str: """ - Value of parameter to start execution of a SageMaker Model Building Pipeline. + Value of parameter to start execution of a SageMaker AI Model Building Pipeline. """ return pulumi.get(self, "value") @@ -3645,7 +3645,7 @@ def __init__(__self__, *, :param 'PipeTargetKinesisStreamParameters' kinesis_stream_parameters: The parameters for using a Kinesis stream as a target. :param 'PipeTargetLambdaFunctionParameters' lambda_function_parameters: The parameters for using a Lambda function as a target. :param 'PipeTargetRedshiftDataParameters' redshift_data_parameters: These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API BatchExecuteStatement. - :param 'PipeTargetSageMakerPipelineParameters' sage_maker_pipeline_parameters: The parameters for using a SageMaker pipeline as a target. + :param 'PipeTargetSageMakerPipelineParameters' sage_maker_pipeline_parameters: The parameters for using a SageMaker AI pipeline as a target. :param 'PipeTargetSqsQueueParameters' sqs_queue_parameters: The parameters for using a Amazon SQS stream as a target. :param 'PipeTargetStateMachineParameters' step_function_state_machine_parameters: The parameters for using a Step Functions state machine as a target. :param 'PipeTargetTimestreamParameters' timestream_parameters: The parameters for using a Timestream for LiveAnalytics table as a target. @@ -3755,7 +3755,7 @@ def redshift_data_parameters(self) -> Optional['outputs.PipeTargetRedshiftDataPa @pulumi.getter(name="sageMakerPipelineParameters") def sage_maker_pipeline_parameters(self) -> Optional['outputs.PipeTargetSageMakerPipelineParameters']: """ - The parameters for using a SageMaker pipeline as a target. + The parameters for using a SageMaker AI pipeline as a target. """ return pulumi.get(self, "sage_maker_pipeline_parameters") @@ -3906,7 +3906,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, pipeline_parameter_list: Optional[Sequence['outputs.PipeSageMakerPipelineParameter']] = None): """ - :param Sequence['PipeSageMakerPipelineParameter'] pipeline_parameter_list: List of Parameter names and values for SageMaker Model Building Pipeline execution. + :param Sequence['PipeSageMakerPipelineParameter'] pipeline_parameter_list: List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ if pipeline_parameter_list is not None: pulumi.set(__self__, "pipeline_parameter_list", pipeline_parameter_list) @@ -3915,7 +3915,7 @@ def __init__(__self__, *, @pulumi.getter(name="pipelineParameterList") def pipeline_parameter_list(self) -> Optional[Sequence['outputs.PipeSageMakerPipelineParameter']]: """ - List of Parameter names and values for SageMaker Model Building Pipeline execution. + List of Parameter names and values for SageMaker AI Model Building Pipeline execution. """ return pulumi.get(self, "pipeline_parameter_list") diff --git a/sdk/python/pulumi_aws_native/qbusiness/_inputs.py b/sdk/python/pulumi_aws_native/qbusiness/_inputs.py index e217b5c828..339f71523c 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/_inputs.py +++ b/sdk/python/pulumi_aws_native/qbusiness/_inputs.py @@ -293,6 +293,9 @@ def q_apps_control_mode(self, value: pulumi.Input['ApplicationQAppsControlMode'] if not MYPY: class ApplicationQuickSightConfigurationArgsDict(TypedDict): client_namespace: pulumi.Input[str] + """ + The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + """ elif False: ApplicationQuickSightConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -300,11 +303,17 @@ class ApplicationQuickSightConfigurationArgsDict(TypedDict): class ApplicationQuickSightConfigurationArgs: def __init__(__self__, *, client_namespace: pulumi.Input[str]): + """ + :param pulumi.Input[str] client_namespace: The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + """ pulumi.set(__self__, "client_namespace", client_namespace) @property @pulumi.getter(name="clientNamespace") def client_namespace(self) -> pulumi.Input[str]: + """ + The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + """ return pulumi.get(self, "client_namespace") @client_namespace.setter @@ -315,7 +324,13 @@ def client_namespace(self, value: pulumi.Input[str]): if not MYPY: class DataAccessorActionConfigurationArgsDict(TypedDict): action: pulumi.Input[str] + """ + The Amazon Q Business action that is allowed. + """ filter_configuration: NotRequired[pulumi.Input['DataAccessorActionFilterConfigurationArgsDict']] + """ + The filter configuration for the action, if any. + """ elif False: DataAccessorActionConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -324,6 +339,10 @@ class DataAccessorActionConfigurationArgs: def __init__(__self__, *, action: pulumi.Input[str], filter_configuration: Optional[pulumi.Input['DataAccessorActionFilterConfigurationArgs']] = None): + """ + :param pulumi.Input[str] action: The Amazon Q Business action that is allowed. + :param pulumi.Input['DataAccessorActionFilterConfigurationArgs'] filter_configuration: The filter configuration for the action, if any. + """ pulumi.set(__self__, "action", action) if filter_configuration is not None: pulumi.set(__self__, "filter_configuration", filter_configuration) @@ -331,6 +350,9 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> pulumi.Input[str]: + """ + The Amazon Q Business action that is allowed. + """ return pulumi.get(self, "action") @action.setter @@ -340,6 +362,9 @@ def action(self, value: pulumi.Input[str]): @property @pulumi.getter(name="filterConfiguration") def filter_configuration(self) -> Optional[pulumi.Input['DataAccessorActionFilterConfigurationArgs']]: + """ + The filter configuration for the action, if any. + """ return pulumi.get(self, "filter_configuration") @filter_configuration.setter @@ -350,6 +375,9 @@ def filter_configuration(self, value: Optional[pulumi.Input['DataAccessorActionF if not MYPY: class DataAccessorActionFilterConfigurationArgsDict(TypedDict): document_attribute_filter: pulumi.Input['DataAccessorAttributeFilterArgsDict'] + """ + Enables filtering of responses based on document attributes or metadata fields. + """ elif False: DataAccessorActionFilterConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -357,11 +385,17 @@ class DataAccessorActionFilterConfigurationArgsDict(TypedDict): class DataAccessorActionFilterConfigurationArgs: def __init__(__self__, *, document_attribute_filter: pulumi.Input['DataAccessorAttributeFilterArgs']): + """ + :param pulumi.Input['DataAccessorAttributeFilterArgs'] document_attribute_filter: Enables filtering of responses based on document attributes or metadata fields. + """ pulumi.set(__self__, "document_attribute_filter", document_attribute_filter) @property @pulumi.getter(name="documentAttributeFilter") def document_attribute_filter(self) -> pulumi.Input['DataAccessorAttributeFilterArgs']: + """ + Enables filtering of responses based on document attributes or metadata fields. + """ return pulumi.get(self, "document_attribute_filter") @document_attribute_filter.setter @@ -372,15 +406,45 @@ def document_attribute_filter(self, value: pulumi.Input['DataAccessorAttributeFi if not MYPY: class DataAccessorAttributeFilterArgsDict(TypedDict): and_all_filters: NotRequired[pulumi.Input[Sequence[pulumi.Input['DataAccessorAttributeFilterArgsDict']]]] + """ + Performs a logical `AND` operation on all supplied filters. + """ contains_all: NotRequired[pulumi.Input['DataAccessorDocumentAttributeArgsDict']] + """ + Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + """ contains_any: NotRequired[pulumi.Input['DataAccessorDocumentAttributeArgsDict']] + """ + Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + """ equals_to: NotRequired[pulumi.Input['DataAccessorDocumentAttributeArgsDict']] + """ + Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + """ greater_than: NotRequired[pulumi.Input['DataAccessorDocumentAttributeArgsDict']] + """ + Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ greater_than_or_equals: NotRequired[pulumi.Input['DataAccessorDocumentAttributeArgsDict']] + """ + Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ less_than: NotRequired[pulumi.Input['DataAccessorDocumentAttributeArgsDict']] + """ + Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ less_than_or_equals: NotRequired[pulumi.Input['DataAccessorDocumentAttributeArgsDict']] + """ + Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ not_filter: NotRequired[pulumi.Input['DataAccessorAttributeFilterArgsDict']] + """ + Performs a logical `NOT` operation on all supplied filters. + """ or_all_filters: NotRequired[pulumi.Input[Sequence[pulumi.Input['DataAccessorAttributeFilterArgsDict']]]] + """ + Performs a logical `OR` operation on all supplied filters. + """ elif False: DataAccessorAttributeFilterArgsDict: TypeAlias = Mapping[str, Any] @@ -397,6 +461,18 @@ def __init__(__self__, *, less_than_or_equals: Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']] = None, not_filter: Optional[pulumi.Input['DataAccessorAttributeFilterArgs']] = None, or_all_filters: Optional[pulumi.Input[Sequence[pulumi.Input['DataAccessorAttributeFilterArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['DataAccessorAttributeFilterArgs']]] and_all_filters: Performs a logical `AND` operation on all supplied filters. + :param pulumi.Input['DataAccessorDocumentAttributeArgs'] contains_all: Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + :param pulumi.Input['DataAccessorDocumentAttributeArgs'] contains_any: Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + :param pulumi.Input['DataAccessorDocumentAttributeArgs'] equals_to: Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + :param pulumi.Input['DataAccessorDocumentAttributeArgs'] greater_than: Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param pulumi.Input['DataAccessorDocumentAttributeArgs'] greater_than_or_equals: Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param pulumi.Input['DataAccessorDocumentAttributeArgs'] less_than: Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param pulumi.Input['DataAccessorDocumentAttributeArgs'] less_than_or_equals: Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param pulumi.Input['DataAccessorAttributeFilterArgs'] not_filter: Performs a logical `NOT` operation on all supplied filters. + :param pulumi.Input[Sequence[pulumi.Input['DataAccessorAttributeFilterArgs']]] or_all_filters: Performs a logical `OR` operation on all supplied filters. + """ if and_all_filters is not None: pulumi.set(__self__, "and_all_filters", and_all_filters) if contains_all is not None: @@ -421,6 +497,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="andAllFilters") def and_all_filters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DataAccessorAttributeFilterArgs']]]]: + """ + Performs a logical `AND` operation on all supplied filters. + """ return pulumi.get(self, "and_all_filters") @and_all_filters.setter @@ -430,6 +509,9 @@ def and_all_filters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Da @property @pulumi.getter(name="containsAll") def contains_all(self) -> Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']]: + """ + Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + """ return pulumi.get(self, "contains_all") @contains_all.setter @@ -439,6 +521,9 @@ def contains_all(self, value: Optional[pulumi.Input['DataAccessorDocumentAttribu @property @pulumi.getter(name="containsAny") def contains_any(self) -> Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']]: + """ + Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + """ return pulumi.get(self, "contains_any") @contains_any.setter @@ -448,6 +533,9 @@ def contains_any(self, value: Optional[pulumi.Input['DataAccessorDocumentAttribu @property @pulumi.getter(name="equalsTo") def equals_to(self) -> Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']]: + """ + Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + """ return pulumi.get(self, "equals_to") @equals_to.setter @@ -457,6 +545,9 @@ def equals_to(self, value: Optional[pulumi.Input['DataAccessorDocumentAttributeA @property @pulumi.getter(name="greaterThan") def greater_than(self) -> Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']]: + """ + Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "greater_than") @greater_than.setter @@ -466,6 +557,9 @@ def greater_than(self, value: Optional[pulumi.Input['DataAccessorDocumentAttribu @property @pulumi.getter(name="greaterThanOrEquals") def greater_than_or_equals(self) -> Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']]: + """ + Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "greater_than_or_equals") @greater_than_or_equals.setter @@ -475,6 +569,9 @@ def greater_than_or_equals(self, value: Optional[pulumi.Input['DataAccessorDocum @property @pulumi.getter(name="lessThan") def less_than(self) -> Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']]: + """ + Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "less_than") @less_than.setter @@ -484,6 +581,9 @@ def less_than(self, value: Optional[pulumi.Input['DataAccessorDocumentAttributeA @property @pulumi.getter(name="lessThanOrEquals") def less_than_or_equals(self) -> Optional[pulumi.Input['DataAccessorDocumentAttributeArgs']]: + """ + Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "less_than_or_equals") @less_than_or_equals.setter @@ -493,6 +593,9 @@ def less_than_or_equals(self, value: Optional[pulumi.Input['DataAccessorDocument @property @pulumi.getter(name="notFilter") def not_filter(self) -> Optional[pulumi.Input['DataAccessorAttributeFilterArgs']]: + """ + Performs a logical `NOT` operation on all supplied filters. + """ return pulumi.get(self, "not_filter") @not_filter.setter @@ -502,6 +605,9 @@ def not_filter(self, value: Optional[pulumi.Input['DataAccessorAttributeFilterAr @property @pulumi.getter(name="orAllFilters") def or_all_filters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DataAccessorAttributeFilterArgs']]]]: + """ + Performs a logical `OR` operation on all supplied filters. + """ return pulumi.get(self, "or_all_filters") @or_all_filters.setter @@ -600,7 +706,13 @@ def date_value(self, value: pulumi.Input[str]): if not MYPY: class DataAccessorDocumentAttributeArgsDict(TypedDict): name: pulumi.Input[str] + """ + The identifier for the attribute. + """ value: pulumi.Input[Union['DataAccessorDocumentAttributeValue0PropertiesArgsDict', 'DataAccessorDocumentAttributeValue1PropertiesArgsDict', 'DataAccessorDocumentAttributeValue2PropertiesArgsDict', 'DataAccessorDocumentAttributeValue3PropertiesArgsDict']] + """ + The value of the attribute. + """ elif False: DataAccessorDocumentAttributeArgsDict: TypeAlias = Mapping[str, Any] @@ -609,12 +721,19 @@ class DataAccessorDocumentAttributeArgs: def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[Union['DataAccessorDocumentAttributeValue0PropertiesArgs', 'DataAccessorDocumentAttributeValue1PropertiesArgs', 'DataAccessorDocumentAttributeValue2PropertiesArgs', 'DataAccessorDocumentAttributeValue3PropertiesArgs']]): + """ + :param pulumi.Input[str] name: The identifier for the attribute. + :param pulumi.Input[Union['DataAccessorDocumentAttributeValue0PropertiesArgs', 'DataAccessorDocumentAttributeValue1PropertiesArgs', 'DataAccessorDocumentAttributeValue2PropertiesArgs', 'DataAccessorDocumentAttributeValue3PropertiesArgs']] value: The value of the attribute. + """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @property @pulumi.getter def name(self) -> pulumi.Input[str]: + """ + The identifier for the attribute. + """ return pulumi.get(self, "name") @name.setter @@ -624,6 +743,9 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[Union['DataAccessorDocumentAttributeValue0PropertiesArgs', 'DataAccessorDocumentAttributeValue1PropertiesArgs', 'DataAccessorDocumentAttributeValue2PropertiesArgs', 'DataAccessorDocumentAttributeValue3PropertiesArgs']]: + """ + The value of the attribute. + """ return pulumi.get(self, "value") @value.setter @@ -1057,6 +1179,9 @@ def s3_bucket_name(self, value: Optional[pulumi.Input[str]]): if not MYPY: class DataSourceImageExtractionConfigurationArgsDict(TypedDict): image_extraction_status: pulumi.Input['DataSourceImageExtractionStatus'] + """ + Specify whether to extract semantic meaning from images and visuals from documents. + """ elif False: DataSourceImageExtractionConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -1064,11 +1189,17 @@ class DataSourceImageExtractionConfigurationArgsDict(TypedDict): class DataSourceImageExtractionConfigurationArgs: def __init__(__self__, *, image_extraction_status: pulumi.Input['DataSourceImageExtractionStatus']): + """ + :param pulumi.Input['DataSourceImageExtractionStatus'] image_extraction_status: Specify whether to extract semantic meaning from images and visuals from documents. + """ pulumi.set(__self__, "image_extraction_status", image_extraction_status) @property @pulumi.getter(name="imageExtractionStatus") def image_extraction_status(self) -> pulumi.Input['DataSourceImageExtractionStatus']: + """ + Specify whether to extract semantic meaning from images and visuals from documents. + """ return pulumi.get(self, "image_extraction_status") @image_extraction_status.setter @@ -1151,6 +1282,9 @@ def target(self, value: Optional[pulumi.Input['DataSourceDocumentAttributeTarget if not MYPY: class DataSourceMediaExtractionConfigurationArgsDict(TypedDict): image_extraction_configuration: NotRequired[pulumi.Input['DataSourceImageExtractionConfigurationArgsDict']] + """ + The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + """ elif False: DataSourceMediaExtractionConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -1158,12 +1292,18 @@ class DataSourceMediaExtractionConfigurationArgsDict(TypedDict): class DataSourceMediaExtractionConfigurationArgs: def __init__(__self__, *, image_extraction_configuration: Optional[pulumi.Input['DataSourceImageExtractionConfigurationArgs']] = None): + """ + :param pulumi.Input['DataSourceImageExtractionConfigurationArgs'] image_extraction_configuration: The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + """ if image_extraction_configuration is not None: pulumi.set(__self__, "image_extraction_configuration", image_extraction_configuration) @property @pulumi.getter(name="imageExtractionConfiguration") def image_extraction_configuration(self) -> Optional[pulumi.Input['DataSourceImageExtractionConfigurationArgs']]: + """ + The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + """ return pulumi.get(self, "image_extraction_configuration") @image_extraction_configuration.setter @@ -1735,9 +1875,21 @@ def index_id(self, value: pulumi.Input[str]): if not MYPY: class WebExperienceCustomizationConfigurationArgsDict(TypedDict): custom_css_url: NotRequired[pulumi.Input[str]] + """ + Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + """ favicon_url: NotRequired[pulumi.Input[str]] + """ + Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + """ font_url: NotRequired[pulumi.Input[str]] + """ + Provides the URL where the custom font file is hosted for an Amazon Q web experience. + """ logo_url: NotRequired[pulumi.Input[str]] + """ + Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + """ elif False: WebExperienceCustomizationConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -1748,6 +1900,12 @@ def __init__(__self__, *, favicon_url: Optional[pulumi.Input[str]] = None, font_url: Optional[pulumi.Input[str]] = None, logo_url: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] custom_css_url: Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + :param pulumi.Input[str] favicon_url: Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + :param pulumi.Input[str] font_url: Provides the URL where the custom font file is hosted for an Amazon Q web experience. + :param pulumi.Input[str] logo_url: Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + """ if custom_css_url is not None: pulumi.set(__self__, "custom_css_url", custom_css_url) if favicon_url is not None: @@ -1760,6 +1918,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="customCssUrl") def custom_css_url(self) -> Optional[pulumi.Input[str]]: + """ + Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "custom_css_url") @custom_css_url.setter @@ -1769,6 +1930,9 @@ def custom_css_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="faviconUrl") def favicon_url(self) -> Optional[pulumi.Input[str]]: + """ + Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "favicon_url") @favicon_url.setter @@ -1778,6 +1942,9 @@ def favicon_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fontUrl") def font_url(self) -> Optional[pulumi.Input[str]]: + """ + Provides the URL where the custom font file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "font_url") @font_url.setter @@ -1787,6 +1954,9 @@ def font_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="logoUrl") def logo_url(self) -> Optional[pulumi.Input[str]]: + """ + Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "logo_url") @logo_url.setter diff --git a/sdk/python/pulumi_aws_native/qbusiness/application.py b/sdk/python/pulumi_aws_native/qbusiness/application.py index 145f5da629..f1ebd5b083 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/application.py +++ b/sdk/python/pulumi_aws_native/qbusiness/application.py @@ -53,6 +53,7 @@ def __init__(__self__, *, :param pulumi.Input['ApplicationIdentityType'] identity_type: The authentication type being used by a Amazon Q Business application. :param pulumi.Input['ApplicationPersonalizationConfigurationArgs'] personalization_configuration: Configuration information about chat response personalization. For more information, see [Personalizing chat responses](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html) . :param pulumi.Input['ApplicationQAppsConfigurationArgs'] q_apps_configuration: Configuration information about Amazon Q Apps. + :param pulumi.Input['ApplicationQuickSightConfigurationArgs'] quick_sight_configuration: The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions) and use it as the application's role. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: A list of key-value pairs that identify or categorize your Amazon Q Business application. You can also use tags to help control access to the application. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @. """ @@ -221,6 +222,9 @@ def q_apps_configuration(self, value: Optional[pulumi.Input['ApplicationQAppsCon @property @pulumi.getter(name="quickSightConfiguration") def quick_sight_configuration(self) -> Optional[pulumi.Input['ApplicationQuickSightConfigurationArgs']]: + """ + The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. + """ return pulumi.get(self, "quick_sight_configuration") @quick_sight_configuration.setter @@ -290,6 +294,7 @@ def __init__(__self__, :param pulumi.Input['ApplicationIdentityType'] identity_type: The authentication type being used by a Amazon Q Business application. :param pulumi.Input[Union['ApplicationPersonalizationConfigurationArgs', 'ApplicationPersonalizationConfigurationArgsDict']] personalization_configuration: Configuration information about chat response personalization. For more information, see [Personalizing chat responses](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html) . :param pulumi.Input[Union['ApplicationQAppsConfigurationArgs', 'ApplicationQAppsConfigurationArgsDict']] q_apps_configuration: Configuration information about Amazon Q Apps. + :param pulumi.Input[Union['ApplicationQuickSightConfigurationArgs', 'ApplicationQuickSightConfigurationArgsDict']] quick_sight_configuration: The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a [service linked role (SLR)](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions) and use it as the application's role. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: A list of key-value pairs that identify or categorize your Amazon Q Business application. You can also use tags to help control access to the application. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @. """ @@ -533,6 +538,9 @@ def q_apps_configuration(self) -> pulumi.Output[Optional['outputs.ApplicationQAp @property @pulumi.getter(name="quickSightConfiguration") def quick_sight_configuration(self) -> pulumi.Output[Optional['outputs.ApplicationQuickSightConfiguration']]: + """ + The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. + """ return pulumi.get(self, "quick_sight_configuration") @property diff --git a/sdk/python/pulumi_aws_native/qbusiness/data_accessor.py b/sdk/python/pulumi_aws_native/qbusiness/data_accessor.py index 9ea7e026ae..bd56c62851 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/data_accessor.py +++ b/sdk/python/pulumi_aws_native/qbusiness/data_accessor.py @@ -30,6 +30,11 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a DataAccessor resource. + :param pulumi.Input[Sequence[pulumi.Input['DataAccessorActionConfigurationArgs']]] action_configurations: A list of action configurations specifying the allowed actions and any associated filters. + :param pulumi.Input[str] display_name: The friendly name of the data accessor. + :param pulumi.Input[str] principal: The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + :param pulumi.Input[str] application_id: The unique identifier of the Amazon Q Business application. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: The tags to associate with the data accessor. """ pulumi.set(__self__, "action_configurations", action_configurations) pulumi.set(__self__, "display_name", display_name) @@ -42,6 +47,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="actionConfigurations") def action_configurations(self) -> pulumi.Input[Sequence[pulumi.Input['DataAccessorActionConfigurationArgs']]]: + """ + A list of action configurations specifying the allowed actions and any associated filters. + """ return pulumi.get(self, "action_configurations") @action_configurations.setter @@ -51,6 +59,9 @@ def action_configurations(self, value: pulumi.Input[Sequence[pulumi.Input['DataA @property @pulumi.getter(name="displayName") def display_name(self) -> pulumi.Input[str]: + """ + The friendly name of the data accessor. + """ return pulumi.get(self, "display_name") @display_name.setter @@ -60,6 +71,9 @@ def display_name(self, value: pulumi.Input[str]): @property @pulumi.getter def principal(self) -> pulumi.Input[str]: + """ + The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + """ return pulumi.get(self, "principal") @principal.setter @@ -69,6 +83,9 @@ def principal(self, value: pulumi.Input[str]): @property @pulumi.getter(name="applicationId") def application_id(self) -> Optional[pulumi.Input[str]]: + """ + The unique identifier of the Amazon Q Business application. + """ return pulumi.get(self, "application_id") @application_id.setter @@ -78,6 +95,9 @@ def application_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: + """ + The tags to associate with the data accessor. + """ return pulumi.get(self, "tags") @tags.setter @@ -101,6 +121,11 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[Sequence[pulumi.Input[Union['DataAccessorActionConfigurationArgs', 'DataAccessorActionConfigurationArgsDict']]]] action_configurations: A list of action configurations specifying the allowed actions and any associated filters. + :param pulumi.Input[str] application_id: The unique identifier of the Amazon Q Business application. + :param pulumi.Input[str] display_name: The friendly name of the data accessor. + :param pulumi.Input[str] principal: The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: The tags to associate with the data accessor. """ ... @overload @@ -195,50 +220,80 @@ def get(resource_name: str, @property @pulumi.getter(name="actionConfigurations") def action_configurations(self) -> pulumi.Output[Sequence['outputs.DataAccessorActionConfiguration']]: + """ + A list of action configurations specifying the allowed actions and any associated filters. + """ return pulumi.get(self, "action_configurations") @property @pulumi.getter(name="applicationId") def application_id(self) -> pulumi.Output[Optional[str]]: + """ + The unique identifier of the Amazon Q Business application. + """ return pulumi.get(self, "application_id") @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: + """ + The timestamp when the data accessor was created. + """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="dataAccessorArn") def data_accessor_arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the data accessor. + """ return pulumi.get(self, "data_accessor_arn") @property @pulumi.getter(name="dataAccessorId") def data_accessor_id(self) -> pulumi.Output[str]: + """ + The unique identifier of the data accessor. + """ return pulumi.get(self, "data_accessor_id") @property @pulumi.getter(name="displayName") def display_name(self) -> pulumi.Output[str]: + """ + The friendly name of the data accessor. + """ return pulumi.get(self, "display_name") @property @pulumi.getter(name="idcApplicationArn") def idc_application_arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + """ return pulumi.get(self, "idc_application_arn") @property @pulumi.getter def principal(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor. + """ return pulumi.get(self, "principal") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: + """ + The tags to associate with the data accessor. + """ return pulumi.get(self, "tags") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: + """ + The timestamp when the data accessor was last updated. + """ return pulumi.get(self, "updated_at") diff --git a/sdk/python/pulumi_aws_native/qbusiness/data_source.py b/sdk/python/pulumi_aws_native/qbusiness/data_source.py index 8bc6cf82de..4f8611ae7a 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/data_source.py +++ b/sdk/python/pulumi_aws_native/qbusiness/data_source.py @@ -57,6 +57,7 @@ def __init__(__self__, *, :param pulumi.Input['DataSourceDocumentEnrichmentConfigurationArgs'] document_enrichment_configuration: Provides the configuration information for altering document metadata and content during the document ingestion process. For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . + :param pulumi.Input['DataSourceMediaExtractionConfigurationArgs'] media_extraction_configuration: The configuration for extracting information from media in documents. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. :param pulumi.Input[str] sync_schedule: Sets the frequency for Amazon Q Business to check the documents in your data source repository and update your index. If you don't set a schedule, Amazon Q Business won't periodically update the index. @@ -172,6 +173,9 @@ def document_enrichment_configuration(self, value: Optional[pulumi.Input['DataSo @property @pulumi.getter(name="mediaExtractionConfiguration") def media_extraction_configuration(self) -> Optional[pulumi.Input['DataSourceMediaExtractionConfigurationArgs']]: + """ + The configuration for extracting information from media in documents. + """ return pulumi.get(self, "media_extraction_configuration") @media_extraction_configuration.setter @@ -271,6 +275,7 @@ def __init__(__self__, For more information, see [Custom document enrichment](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html) . :param pulumi.Input[str] index_id: The identifier of the index the data source is attached to. + :param pulumi.Input[Union['DataSourceMediaExtractionConfigurationArgs', 'DataSourceMediaExtractionConfigurationArgsDict']] media_extraction_configuration: The configuration for extracting information from media in documents. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. :param pulumi.Input[str] sync_schedule: Sets the frequency for Amazon Q Business to check the documents in your data source repository and update your index. If you don't set a schedule, Amazon Q Business won't periodically update the index. @@ -479,6 +484,9 @@ def index_id(self) -> pulumi.Output[str]: @property @pulumi.getter(name="mediaExtractionConfiguration") def media_extraction_configuration(self) -> pulumi.Output[Optional['outputs.DataSourceMediaExtractionConfiguration']]: + """ + The configuration for extracting information from media in documents. + """ return pulumi.get(self, "media_extraction_configuration") @property diff --git a/sdk/python/pulumi_aws_native/qbusiness/get_data_accessor.py b/sdk/python/pulumi_aws_native/qbusiness/get_data_accessor.py index 8199882e01..97fb704e2f 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/get_data_accessor.py +++ b/sdk/python/pulumi_aws_native/qbusiness/get_data_accessor.py @@ -54,41 +54,65 @@ def __init__(__self__, action_configurations=None, created_at=None, data_accesso @property @pulumi.getter(name="actionConfigurations") def action_configurations(self) -> Optional[Sequence['outputs.DataAccessorActionConfiguration']]: + """ + A list of action configurations specifying the allowed actions and any associated filters. + """ return pulumi.get(self, "action_configurations") @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[str]: + """ + The timestamp when the data accessor was created. + """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="dataAccessorArn") def data_accessor_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the data accessor. + """ return pulumi.get(self, "data_accessor_arn") @property @pulumi.getter(name="dataAccessorId") def data_accessor_id(self) -> Optional[str]: + """ + The unique identifier of the data accessor. + """ return pulumi.get(self, "data_accessor_id") @property @pulumi.getter(name="displayName") def display_name(self) -> Optional[str]: + """ + The friendly name of the data accessor. + """ return pulumi.get(self, "display_name") @property @pulumi.getter(name="idcApplicationArn") def idc_application_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the associated IAM Identity Center application. + """ return pulumi.get(self, "idc_application_arn") @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + """ + The tags to associate with the data accessor. + """ return pulumi.get(self, "tags") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[str]: + """ + The timestamp when the data accessor was last updated. + """ return pulumi.get(self, "updated_at") @@ -113,6 +137,10 @@ def get_data_accessor(application_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDataAccessorResult: """ Definition of AWS::QBusiness::DataAccessor Resource Type + + + :param str application_id: The unique identifier of the Amazon Q Business application. + :param str data_accessor_id: The unique identifier of the data accessor. """ __args__ = dict() __args__['applicationId'] = application_id @@ -134,6 +162,10 @@ def get_data_accessor_output(application_id: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDataAccessorResult]: """ Definition of AWS::QBusiness::DataAccessor Resource Type + + + :param str application_id: The unique identifier of the Amazon Q Business application. + :param str data_accessor_id: The unique identifier of the data accessor. """ __args__ = dict() __args__['applicationId'] = application_id diff --git a/sdk/python/pulumi_aws_native/qbusiness/get_data_source.py b/sdk/python/pulumi_aws_native/qbusiness/get_data_source.py index 8910135aa9..006be00295 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/get_data_source.py +++ b/sdk/python/pulumi_aws_native/qbusiness/get_data_source.py @@ -146,6 +146,9 @@ def document_enrichment_configuration(self) -> Optional['outputs.DataSourceDocum @property @pulumi.getter(name="mediaExtractionConfiguration") def media_extraction_configuration(self) -> Optional['outputs.DataSourceMediaExtractionConfiguration']: + """ + The configuration for extracting information from media in documents. + """ return pulumi.get(self, "media_extraction_configuration") @property diff --git a/sdk/python/pulumi_aws_native/qbusiness/get_web_experience.py b/sdk/python/pulumi_aws_native/qbusiness/get_web_experience.py index 207b25537d..1eb375e94a 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/get_web_experience.py +++ b/sdk/python/pulumi_aws_native/qbusiness/get_web_experience.py @@ -84,6 +84,9 @@ def created_at(self) -> Optional[str]: @property @pulumi.getter(name="customizationConfiguration") def customization_configuration(self) -> Optional['outputs.WebExperienceCustomizationConfiguration']: + """ + Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + """ return pulumi.get(self, "customization_configuration") @property diff --git a/sdk/python/pulumi_aws_native/qbusiness/outputs.py b/sdk/python/pulumi_aws_native/qbusiness/outputs.py index 2ef27bd801..7be5dd0929 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/outputs.py +++ b/sdk/python/pulumi_aws_native/qbusiness/outputs.py @@ -279,11 +279,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, client_namespace: str): + """ + :param str client_namespace: The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + """ pulumi.set(__self__, "client_namespace", client_namespace) @property @pulumi.getter(name="clientNamespace") def client_namespace(self) -> str: + """ + The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see [Namespace operations](https://docs.aws.amazon.com/quicksight/latest/developerguide/namespace-operations.html) . + """ return pulumi.get(self, "client_namespace") @@ -309,6 +315,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, action: str, filter_configuration: Optional['outputs.DataAccessorActionFilterConfiguration'] = None): + """ + :param str action: The Amazon Q Business action that is allowed. + :param 'DataAccessorActionFilterConfiguration' filter_configuration: The filter configuration for the action, if any. + """ pulumi.set(__self__, "action", action) if filter_configuration is not None: pulumi.set(__self__, "filter_configuration", filter_configuration) @@ -316,11 +326,17 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> str: + """ + The Amazon Q Business action that is allowed. + """ return pulumi.get(self, "action") @property @pulumi.getter(name="filterConfiguration") def filter_configuration(self) -> Optional['outputs.DataAccessorActionFilterConfiguration']: + """ + The filter configuration for the action, if any. + """ return pulumi.get(self, "filter_configuration") @@ -345,11 +361,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, document_attribute_filter: 'outputs.DataAccessorAttributeFilter'): + """ + :param 'DataAccessorAttributeFilter' document_attribute_filter: Enables filtering of responses based on document attributes or metadata fields. + """ pulumi.set(__self__, "document_attribute_filter", document_attribute_filter) @property @pulumi.getter(name="documentAttributeFilter") def document_attribute_filter(self) -> 'outputs.DataAccessorAttributeFilter': + """ + Enables filtering of responses based on document attributes or metadata fields. + """ return pulumi.get(self, "document_attribute_filter") @@ -401,6 +423,18 @@ def __init__(__self__, *, less_than_or_equals: Optional['outputs.DataAccessorDocumentAttribute'] = None, not_filter: Optional['outputs.DataAccessorAttributeFilter'] = None, or_all_filters: Optional[Sequence['outputs.DataAccessorAttributeFilter']] = None): + """ + :param Sequence['DataAccessorAttributeFilter'] and_all_filters: Performs a logical `AND` operation on all supplied filters. + :param 'DataAccessorDocumentAttribute' contains_all: Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + :param 'DataAccessorDocumentAttribute' contains_any: Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + :param 'DataAccessorDocumentAttribute' equals_to: Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + :param 'DataAccessorDocumentAttribute' greater_than: Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param 'DataAccessorDocumentAttribute' greater_than_or_equals: Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param 'DataAccessorDocumentAttribute' less_than: Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param 'DataAccessorDocumentAttribute' less_than_or_equals: Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + :param 'DataAccessorAttributeFilter' not_filter: Performs a logical `NOT` operation on all supplied filters. + :param Sequence['DataAccessorAttributeFilter'] or_all_filters: Performs a logical `OR` operation on all supplied filters. + """ if and_all_filters is not None: pulumi.set(__self__, "and_all_filters", and_all_filters) if contains_all is not None: @@ -425,51 +459,81 @@ def __init__(__self__, *, @property @pulumi.getter(name="andAllFilters") def and_all_filters(self) -> Optional[Sequence['outputs.DataAccessorAttributeFilter']]: + """ + Performs a logical `AND` operation on all supplied filters. + """ return pulumi.get(self, "and_all_filters") @property @pulumi.getter(name="containsAll") def contains_all(self) -> Optional['outputs.DataAccessorDocumentAttribute']: + """ + Returns `true` when a document contains all the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + """ return pulumi.get(self, "contains_all") @property @pulumi.getter(name="containsAny") def contains_any(self) -> Optional['outputs.DataAccessorDocumentAttribute']: + """ + Returns `true` when a document contains any of the specified document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `stringListValue` . + """ return pulumi.get(self, "contains_any") @property @pulumi.getter(name="equalsTo") def equals_to(self) -> Optional['outputs.DataAccessorDocumentAttribute']: + """ + Performs an equals operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` , `longValue` , `stringListValue` and `stringValue` . + """ return pulumi.get(self, "equals_to") @property @pulumi.getter(name="greaterThan") def greater_than(self) -> Optional['outputs.DataAccessorDocumentAttribute']: + """ + Performs a greater than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "greater_than") @property @pulumi.getter(name="greaterThanOrEquals") def greater_than_or_equals(self) -> Optional['outputs.DataAccessorDocumentAttribute']: + """ + Performs a greater or equals than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "greater_than_or_equals") @property @pulumi.getter(name="lessThan") def less_than(self) -> Optional['outputs.DataAccessorDocumentAttribute']: + """ + Performs a less than operation on two document attributes or metadata fields. Supported for the following [document attribute value types](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "less_than") @property @pulumi.getter(name="lessThanOrEquals") def less_than_or_equals(self) -> Optional['outputs.DataAccessorDocumentAttribute']: + """ + Performs a less than or equals operation on two document attributes or metadata fields.Supported for the following [document attribute value type](https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html) : `dateValue` and `longValue` . + """ return pulumi.get(self, "less_than_or_equals") @property @pulumi.getter(name="notFilter") def not_filter(self) -> Optional['outputs.DataAccessorAttributeFilter']: + """ + Performs a logical `NOT` operation on all supplied filters. + """ return pulumi.get(self, "not_filter") @property @pulumi.getter(name="orAllFilters") def or_all_filters(self) -> Optional[Sequence['outputs.DataAccessorAttributeFilter']]: + """ + Performs a logical `OR` operation on all supplied filters. + """ return pulumi.get(self, "or_all_filters") @@ -478,17 +542,27 @@ class DataAccessorDocumentAttribute(dict): def __init__(__self__, *, name: str, value: Any): + """ + :param str name: The identifier for the attribute. + :param Union['DataAccessorDocumentAttributeValue0Properties', 'DataAccessorDocumentAttributeValue1Properties', 'DataAccessorDocumentAttributeValue2Properties', 'DataAccessorDocumentAttributeValue3Properties'] value: The value of the attribute. + """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @property @pulumi.getter def name(self) -> str: + """ + The identifier for the attribute. + """ return pulumi.get(self, "name") @property @pulumi.getter def value(self) -> Any: + """ + The value of the attribute. + """ return pulumi.get(self, "value") @@ -1007,11 +1081,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, image_extraction_status: 'DataSourceImageExtractionStatus'): + """ + :param 'DataSourceImageExtractionStatus' image_extraction_status: Specify whether to extract semantic meaning from images and visuals from documents. + """ pulumi.set(__self__, "image_extraction_status", image_extraction_status) @property @pulumi.getter(name="imageExtractionStatus") def image_extraction_status(self) -> 'DataSourceImageExtractionStatus': + """ + Specify whether to extract semantic meaning from images and visuals from documents. + """ return pulumi.get(self, "image_extraction_status") @@ -1096,12 +1176,18 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, image_extraction_configuration: Optional['outputs.DataSourceImageExtractionConfiguration'] = None): + """ + :param 'DataSourceImageExtractionConfiguration' image_extraction_configuration: The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + """ if image_extraction_configuration is not None: pulumi.set(__self__, "image_extraction_configuration", image_extraction_configuration) @property @pulumi.getter(name="imageExtractionConfiguration") def image_extraction_configuration(self) -> Optional['outputs.DataSourceImageExtractionConfiguration']: + """ + The configuration for extracting semantic meaning from images in documents. For more information, see [Extracting semantic meaning from images and visuals](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/extracting-meaning-from-images.html) . + """ return pulumi.get(self, "image_extraction_configuration") @@ -1738,6 +1824,12 @@ def __init__(__self__, *, favicon_url: Optional[str] = None, font_url: Optional[str] = None, logo_url: Optional[str] = None): + """ + :param str custom_css_url: Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + :param str favicon_url: Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + :param str font_url: Provides the URL where the custom font file is hosted for an Amazon Q web experience. + :param str logo_url: Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + """ if custom_css_url is not None: pulumi.set(__self__, "custom_css_url", custom_css_url) if favicon_url is not None: @@ -1750,21 +1842,33 @@ def __init__(__self__, *, @property @pulumi.getter(name="customCssUrl") def custom_css_url(self) -> Optional[str]: + """ + Provides the URL where the custom CSS file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "custom_css_url") @property @pulumi.getter(name="faviconUrl") def favicon_url(self) -> Optional[str]: + """ + Provides the URL where the custom favicon file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "favicon_url") @property @pulumi.getter(name="fontUrl") def font_url(self) -> Optional[str]: + """ + Provides the URL where the custom font file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "font_url") @property @pulumi.getter(name="logoUrl") def logo_url(self) -> Optional[str]: + """ + Provides the URL where the custom logo file is hosted for an Amazon Q web experience. + """ return pulumi.get(self, "logo_url") diff --git a/sdk/python/pulumi_aws_native/qbusiness/permission.py b/sdk/python/pulumi_aws_native/qbusiness/permission.py index 748294704f..ac3c40b4c2 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/permission.py +++ b/sdk/python/pulumi_aws_native/qbusiness/permission.py @@ -25,6 +25,10 @@ def __init__(__self__, *, statement_id: pulumi.Input[str]): """ The set of arguments for constructing a Permission resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] actions: The list of Amazon Q Business actions that the ISV is allowed to perform. + :param pulumi.Input[str] application_id: The unique identifier of the Amazon Q Business application. + :param pulumi.Input[str] principal: Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + :param pulumi.Input[str] statement_id: A unique identifier for the policy statement. """ pulumi.set(__self__, "actions", actions) pulumi.set(__self__, "application_id", application_id) @@ -34,6 +38,9 @@ def __init__(__self__, *, @property @pulumi.getter def actions(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + The list of Amazon Q Business actions that the ISV is allowed to perform. + """ return pulumi.get(self, "actions") @actions.setter @@ -43,6 +50,9 @@ def actions(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): @property @pulumi.getter(name="applicationId") def application_id(self) -> pulumi.Input[str]: + """ + The unique identifier of the Amazon Q Business application. + """ return pulumi.get(self, "application_id") @application_id.setter @@ -52,6 +62,9 @@ def application_id(self, value: pulumi.Input[str]): @property @pulumi.getter def principal(self) -> pulumi.Input[str]: + """ + Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + """ return pulumi.get(self, "principal") @principal.setter @@ -61,6 +74,9 @@ def principal(self, value: pulumi.Input[str]): @property @pulumi.getter(name="statementId") def statement_id(self) -> pulumi.Input[str]: + """ + A unique identifier for the policy statement. + """ return pulumi.get(self, "statement_id") @statement_id.setter @@ -83,6 +99,10 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] actions: The list of Amazon Q Business actions that the ISV is allowed to perform. + :param pulumi.Input[str] application_id: The unique identifier of the Amazon Q Business application. + :param pulumi.Input[str] principal: Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + :param pulumi.Input[str] statement_id: A unique identifier for the policy statement. """ ... @overload @@ -166,20 +186,32 @@ def get(resource_name: str, @property @pulumi.getter def actions(self) -> pulumi.Output[Sequence[str]]: + """ + The list of Amazon Q Business actions that the ISV is allowed to perform. + """ return pulumi.get(self, "actions") @property @pulumi.getter(name="applicationId") def application_id(self) -> pulumi.Output[str]: + """ + The unique identifier of the Amazon Q Business application. + """ return pulumi.get(self, "application_id") @property @pulumi.getter def principal(self) -> pulumi.Output[str]: + """ + Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses. + """ return pulumi.get(self, "principal") @property @pulumi.getter(name="statementId") def statement_id(self) -> pulumi.Output[str]: + """ + A unique identifier for the policy statement. + """ return pulumi.get(self, "statement_id") diff --git a/sdk/python/pulumi_aws_native/qbusiness/web_experience.py b/sdk/python/pulumi_aws_native/qbusiness/web_experience.py index 2257142a2d..f378da3c31 100644 --- a/sdk/python/pulumi_aws_native/qbusiness/web_experience.py +++ b/sdk/python/pulumi_aws_native/qbusiness/web_experience.py @@ -37,6 +37,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a WebExperience resource. :param pulumi.Input[str] application_id: The identifier of the Amazon Q Business web experience. + :param pulumi.Input['WebExperienceCustomizationConfigurationArgs'] customization_configuration: Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. :param pulumi.Input[Union['WebExperienceIdentityProviderConfiguration0PropertiesArgs', 'WebExperienceIdentityProviderConfiguration1PropertiesArgs']] identity_provider_configuration: Provides information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience. :param pulumi.Input[Sequence[pulumi.Input[str]]] origins: Sets the website domain origins that are allowed to embed the Amazon Q Business web experience. The *domain origin* refers to the base URL for accessing a website including the protocol ( `http/https` ), the domain name, and the port number (if specified). @@ -85,6 +86,9 @@ def application_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="customizationConfiguration") def customization_configuration(self) -> Optional[pulumi.Input['WebExperienceCustomizationConfigurationArgs']]: + """ + Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + """ return pulumi.get(self, "customization_configuration") @customization_configuration.setter @@ -214,6 +218,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] application_id: The identifier of the Amazon Q Business web experience. + :param pulumi.Input[Union['WebExperienceCustomizationConfigurationArgs', 'WebExperienceCustomizationConfigurationArgsDict']] customization_configuration: Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. :param pulumi.Input[Union[Union['WebExperienceIdentityProviderConfiguration0PropertiesArgs', 'WebExperienceIdentityProviderConfiguration0PropertiesArgsDict'], Union['WebExperienceIdentityProviderConfiguration1PropertiesArgs', 'WebExperienceIdentityProviderConfiguration1PropertiesArgsDict']]] identity_provider_configuration: Provides information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience. :param pulumi.Input[Sequence[pulumi.Input[str]]] origins: Sets the website domain origins that are allowed to embed the Amazon Q Business web experience. The *domain origin* refers to the base URL for accessing a website including the protocol ( `http/https` ), the domain name, and the port number (if specified). @@ -349,6 +354,9 @@ def created_at(self) -> pulumi.Output[str]: @property @pulumi.getter(name="customizationConfiguration") def customization_configuration(self) -> pulumi.Output[Optional['outputs.WebExperienceCustomizationConfiguration']]: + """ + Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all. + """ return pulumi.get(self, "customization_configuration") @property diff --git a/sdk/python/pulumi_aws_native/quicksight/_inputs.py b/sdk/python/pulumi_aws_native/quicksight/_inputs.py index b0f01958a9..5ec3226a7e 100644 --- a/sdk/python/pulumi_aws_native/quicksight/_inputs.py +++ b/sdk/python/pulumi_aws_native/quicksight/_inputs.py @@ -2276,6 +2276,8 @@ 'DataSetNewDefaultValuesArgsDict', 'DataSetOverrideDatasetParameterOperationArgs', 'DataSetOverrideDatasetParameterOperationArgsDict', + 'DataSetPerformanceConfigurationArgs', + 'DataSetPerformanceConfigurationArgsDict', 'DataSetPhysicalTableArgs', 'DataSetPhysicalTableArgsDict', 'DataSetProjectOperationArgs', @@ -2306,6 +2308,8 @@ 'DataSetTagColumnOperationArgsDict', 'DataSetTransformOperationArgs', 'DataSetTransformOperationArgsDict', + 'DataSetUniqueKeyArgs', + 'DataSetUniqueKeyArgsDict', 'DataSetUntagColumnOperationArgs', 'DataSetUntagColumnOperationArgsDict', 'DataSetUploadSettingsArgs', @@ -89159,6 +89163,29 @@ def new_parameter_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "new_parameter_name", value) +if not MYPY: + class DataSetPerformanceConfigurationArgsDict(TypedDict): + unique_keys: NotRequired[pulumi.Input[Sequence[pulumi.Input['DataSetUniqueKeyArgsDict']]]] +elif False: + DataSetPerformanceConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DataSetPerformanceConfigurationArgs: + def __init__(__self__, *, + unique_keys: Optional[pulumi.Input[Sequence[pulumi.Input['DataSetUniqueKeyArgs']]]] = None): + if unique_keys is not None: + pulumi.set(__self__, "unique_keys", unique_keys) + + @property + @pulumi.getter(name="uniqueKeys") + def unique_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DataSetUniqueKeyArgs']]]]: + return pulumi.get(self, "unique_keys") + + @unique_keys.setter + def unique_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DataSetUniqueKeyArgs']]]]): + pulumi.set(self, "unique_keys", value) + + if not MYPY: class DataSetPhysicalTableArgsDict(TypedDict): """ @@ -90356,6 +90383,28 @@ def untag_column_operation(self, value: Optional[pulumi.Input['DataSetUntagColum pulumi.set(self, "untag_column_operation", value) +if not MYPY: + class DataSetUniqueKeyArgsDict(TypedDict): + column_names: pulumi.Input[Sequence[pulumi.Input[str]]] +elif False: + DataSetUniqueKeyArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DataSetUniqueKeyArgs: + def __init__(__self__, *, + column_names: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(__self__, "column_names", column_names) + + @property + @pulumi.getter(name="columnNames") + def column_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "column_names") + + @column_names.setter + def column_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "column_names", value) + + if not MYPY: class DataSetUntagColumnOperationArgsDict(TypedDict): """ diff --git a/sdk/python/pulumi_aws_native/quicksight/data_set.py b/sdk/python/pulumi_aws_native/quicksight/data_set.py index 1ca578686f..66ec11f775 100644 --- a/sdk/python/pulumi_aws_native/quicksight/data_set.py +++ b/sdk/python/pulumi_aws_native/quicksight/data_set.py @@ -37,6 +37,7 @@ def __init__(__self__, *, ingestion_wait_policy: Optional[pulumi.Input['DataSetIngestionWaitPolicyArgs']] = None, logical_table_map: Optional[pulumi.Input[Mapping[str, pulumi.Input['DataSetLogicalTableArgs']]]] = None, name: Optional[pulumi.Input[str]] = None, + performance_configuration: Optional[pulumi.Input['DataSetPerformanceConfigurationArgs']] = None, permissions: Optional[pulumi.Input[Sequence[pulumi.Input['DataSetResourcePermissionArgs']]]] = None, physical_table_map: Optional[pulumi.Input[Mapping[str, pulumi.Input['DataSetPhysicalTableArgs']]]] = None, row_level_permission_data_set: Optional[pulumi.Input['DataSetRowLevelPermissionDataSetArgs']] = None, @@ -91,6 +92,8 @@ def __init__(__self__, *, pulumi.set(__self__, "logical_table_map", logical_table_map) if name is not None: pulumi.set(__self__, "name", name) + if performance_configuration is not None: + pulumi.set(__self__, "performance_configuration", performance_configuration) if permissions is not None: pulumi.set(__self__, "permissions", permissions) if physical_table_map is not None: @@ -260,6 +263,15 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) + @property + @pulumi.getter(name="performanceConfiguration") + def performance_configuration(self) -> Optional[pulumi.Input['DataSetPerformanceConfigurationArgs']]: + return pulumi.get(self, "performance_configuration") + + @performance_configuration.setter + def performance_configuration(self, value: Optional[pulumi.Input['DataSetPerformanceConfigurationArgs']]): + pulumi.set(self, "performance_configuration", value) + @property @pulumi.getter def permissions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DataSetResourcePermissionArgs']]]]: @@ -339,6 +351,7 @@ def __init__(__self__, ingestion_wait_policy: Optional[pulumi.Input[Union['DataSetIngestionWaitPolicyArgs', 'DataSetIngestionWaitPolicyArgsDict']]] = None, logical_table_map: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['DataSetLogicalTableArgs', 'DataSetLogicalTableArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, + performance_configuration: Optional[pulumi.Input[Union['DataSetPerformanceConfigurationArgs', 'DataSetPerformanceConfigurationArgsDict']]] = None, permissions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DataSetResourcePermissionArgs', 'DataSetResourcePermissionArgsDict']]]]] = None, physical_table_map: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['DataSetPhysicalTableArgs', 'DataSetPhysicalTableArgsDict']]]]] = None, row_level_permission_data_set: Optional[pulumi.Input[Union['DataSetRowLevelPermissionDataSetArgs', 'DataSetRowLevelPermissionDataSetArgsDict']]] = None, @@ -408,6 +421,7 @@ def _internal_init(__self__, ingestion_wait_policy: Optional[pulumi.Input[Union['DataSetIngestionWaitPolicyArgs', 'DataSetIngestionWaitPolicyArgsDict']]] = None, logical_table_map: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['DataSetLogicalTableArgs', 'DataSetLogicalTableArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, + performance_configuration: Optional[pulumi.Input[Union['DataSetPerformanceConfigurationArgs', 'DataSetPerformanceConfigurationArgsDict']]] = None, permissions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DataSetResourcePermissionArgs', 'DataSetResourcePermissionArgsDict']]]]] = None, physical_table_map: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['DataSetPhysicalTableArgs', 'DataSetPhysicalTableArgsDict']]]]] = None, row_level_permission_data_set: Optional[pulumi.Input[Union['DataSetRowLevelPermissionDataSetArgs', 'DataSetRowLevelPermissionDataSetArgsDict']]] = None, @@ -435,6 +449,7 @@ def _internal_init(__self__, __props__.__dict__["ingestion_wait_policy"] = ingestion_wait_policy __props__.__dict__["logical_table_map"] = logical_table_map __props__.__dict__["name"] = name + __props__.__dict__["performance_configuration"] = performance_configuration __props__.__dict__["permissions"] = permissions __props__.__dict__["physical_table_map"] = physical_table_map __props__.__dict__["row_level_permission_data_set"] = row_level_permission_data_set @@ -487,6 +502,7 @@ def get(resource_name: str, __props__.__dict__["logical_table_map"] = None __props__.__dict__["name"] = None __props__.__dict__["output_columns"] = None + __props__.__dict__["performance_configuration"] = None __props__.__dict__["permissions"] = None __props__.__dict__["physical_table_map"] = None __props__.__dict__["row_level_permission_data_set"] = None @@ -642,6 +658,11 @@ def output_columns(self) -> pulumi.Output[Sequence['outputs.DataSetOutputColumn' """ return pulumi.get(self, "output_columns") + @property + @pulumi.getter(name="performanceConfiguration") + def performance_configuration(self) -> pulumi.Output[Optional['outputs.DataSetPerformanceConfiguration']]: + return pulumi.get(self, "performance_configuration") + @property @pulumi.getter def permissions(self) -> pulumi.Output[Optional[Sequence['outputs.DataSetResourcePermission']]]: diff --git a/sdk/python/pulumi_aws_native/quicksight/get_data_set.py b/sdk/python/pulumi_aws_native/quicksight/get_data_set.py index 1d880dd811..198e71a991 100644 --- a/sdk/python/pulumi_aws_native/quicksight/get_data_set.py +++ b/sdk/python/pulumi_aws_native/quicksight/get_data_set.py @@ -26,7 +26,7 @@ @pulumi.output_type class GetDataSetResult: - def __init__(__self__, arn=None, column_groups=None, column_level_permission_rules=None, consumed_spice_capacity_in_bytes=None, created_time=None, data_set_refresh_properties=None, data_set_usage_configuration=None, dataset_parameters=None, import_mode=None, last_updated_time=None, logical_table_map=None, name=None, output_columns=None, permissions=None, physical_table_map=None, row_level_permission_data_set=None, row_level_permission_tag_configuration=None, tags=None): + def __init__(__self__, arn=None, column_groups=None, column_level_permission_rules=None, consumed_spice_capacity_in_bytes=None, created_time=None, data_set_refresh_properties=None, data_set_usage_configuration=None, dataset_parameters=None, import_mode=None, last_updated_time=None, logical_table_map=None, name=None, output_columns=None, performance_configuration=None, permissions=None, physical_table_map=None, row_level_permission_data_set=None, row_level_permission_tag_configuration=None, tags=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -66,6 +66,9 @@ def __init__(__self__, arn=None, column_groups=None, column_level_permission_rul if output_columns and not isinstance(output_columns, list): raise TypeError("Expected argument 'output_columns' to be a list") pulumi.set(__self__, "output_columns", output_columns) + if performance_configuration and not isinstance(performance_configuration, dict): + raise TypeError("Expected argument 'performance_configuration' to be a dict") + pulumi.set(__self__, "performance_configuration", performance_configuration) if permissions and not isinstance(permissions, list): raise TypeError("Expected argument 'permissions' to be a list") pulumi.set(__self__, "permissions", permissions) @@ -190,6 +193,11 @@ def output_columns(self) -> Optional[Sequence['outputs.DataSetOutputColumn']]: """ return pulumi.get(self, "output_columns") + @property + @pulumi.getter(name="performanceConfiguration") + def performance_configuration(self) -> Optional['outputs.DataSetPerformanceConfiguration']: + return pulumi.get(self, "performance_configuration") + @property @pulumi.getter def permissions(self) -> Optional[Sequence['outputs.DataSetResourcePermission']]: @@ -250,6 +258,7 @@ def __await__(self): logical_table_map=self.logical_table_map, name=self.name, output_columns=self.output_columns, + performance_configuration=self.performance_configuration, permissions=self.permissions, physical_table_map=self.physical_table_map, row_level_permission_data_set=self.row_level_permission_data_set, @@ -287,6 +296,7 @@ def get_data_set(aws_account_id: Optional[str] = None, logical_table_map=pulumi.get(__ret__, 'logical_table_map'), name=pulumi.get(__ret__, 'name'), output_columns=pulumi.get(__ret__, 'output_columns'), + performance_configuration=pulumi.get(__ret__, 'performance_configuration'), permissions=pulumi.get(__ret__, 'permissions'), physical_table_map=pulumi.get(__ret__, 'physical_table_map'), row_level_permission_data_set=pulumi.get(__ret__, 'row_level_permission_data_set'), @@ -321,6 +331,7 @@ def get_data_set_output(aws_account_id: Optional[pulumi.Input[str]] = None, logical_table_map=pulumi.get(__response__, 'logical_table_map'), name=pulumi.get(__response__, 'name'), output_columns=pulumi.get(__response__, 'output_columns'), + performance_configuration=pulumi.get(__response__, 'performance_configuration'), permissions=pulumi.get(__response__, 'permissions'), physical_table_map=pulumi.get(__response__, 'physical_table_map'), row_level_permission_data_set=pulumi.get(__response__, 'row_level_permission_data_set'), diff --git a/sdk/python/pulumi_aws_native/quicksight/outputs.py b/sdk/python/pulumi_aws_native/quicksight/outputs.py index 7b45f82bee..70bf0054cc 100644 --- a/sdk/python/pulumi_aws_native/quicksight/outputs.py +++ b/sdk/python/pulumi_aws_native/quicksight/outputs.py @@ -1152,6 +1152,7 @@ 'DataSetNewDefaultValues', 'DataSetOutputColumn', 'DataSetOverrideDatasetParameterOperation', + 'DataSetPerformanceConfiguration', 'DataSetPhysicalTable', 'DataSetProjectOperation', 'DataSetRefreshConfiguration', @@ -1167,6 +1168,7 @@ 'DataSetStringDatasetParameterDefaultValues', 'DataSetTagColumnOperation', 'DataSetTransformOperation', + 'DataSetUniqueKey', 'DataSetUntagColumnOperation', 'DataSetUploadSettings', 'DataSetUsageConfiguration', @@ -72868,6 +72870,36 @@ def new_parameter_name(self) -> Optional[str]: return pulumi.get(self, "new_parameter_name") +@pulumi.output_type +class DataSetPerformanceConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "uniqueKeys": + suggest = "unique_keys" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DataSetPerformanceConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DataSetPerformanceConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DataSetPerformanceConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + unique_keys: Optional[Sequence['outputs.DataSetUniqueKey']] = None): + if unique_keys is not None: + pulumi.set(__self__, "unique_keys", unique_keys) + + @property + @pulumi.getter(name="uniqueKeys") + def unique_keys(self) -> Optional[Sequence['outputs.DataSetUniqueKey']]: + return pulumi.get(self, "unique_keys") + + @pulumi.output_type class DataSetPhysicalTable(dict): """ @@ -73887,6 +73919,35 @@ def untag_column_operation(self) -> Optional['outputs.DataSetUntagColumnOperatio return pulumi.get(self, "untag_column_operation") +@pulumi.output_type +class DataSetUniqueKey(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "columnNames": + suggest = "column_names" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DataSetUniqueKey. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DataSetUniqueKey.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DataSetUniqueKey.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + column_names: Sequence[str]): + pulumi.set(__self__, "column_names", column_names) + + @property + @pulumi.getter(name="columnNames") + def column_names(self) -> Sequence[str]: + return pulumi.get(self, "column_names") + + @pulumi.output_type class DataSetUntagColumnOperation(dict): """ diff --git a/sdk/python/pulumi_aws_native/redshiftserverless/_inputs.py b/sdk/python/pulumi_aws_native/redshiftserverless/_inputs.py index 7be87c19f9..072ddb4bb3 100644 --- a/sdk/python/pulumi_aws_native/redshiftserverless/_inputs.py +++ b/sdk/python/pulumi_aws_native/redshiftserverless/_inputs.py @@ -152,7 +152,13 @@ def parameter_value(self, value: Optional[pulumi.Input[str]]): if not MYPY: class WorkgroupPerformanceTargetArgsDict(TypedDict): level: NotRequired[pulumi.Input[int]] + """ + The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + """ status: NotRequired[pulumi.Input['WorkgroupPerformanceTargetStatus']] + """ + Whether the price performance target is enabled for the workgroup. + """ elif False: WorkgroupPerformanceTargetArgsDict: TypeAlias = Mapping[str, Any] @@ -161,6 +167,10 @@ class WorkgroupPerformanceTargetArgs: def __init__(__self__, *, level: Optional[pulumi.Input[int]] = None, status: Optional[pulumi.Input['WorkgroupPerformanceTargetStatus']] = None): + """ + :param pulumi.Input[int] level: The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + :param pulumi.Input['WorkgroupPerformanceTargetStatus'] status: Whether the price performance target is enabled for the workgroup. + """ if level is not None: pulumi.set(__self__, "level", level) if status is not None: @@ -169,6 +179,9 @@ def __init__(__self__, *, @property @pulumi.getter def level(self) -> Optional[pulumi.Input[int]]: + """ + The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + """ return pulumi.get(self, "level") @level.setter @@ -178,6 +191,9 @@ def level(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input['WorkgroupPerformanceTargetStatus']]: + """ + Whether the price performance target is enabled for the workgroup. + """ return pulumi.get(self, "status") @status.setter diff --git a/sdk/python/pulumi_aws_native/redshiftserverless/outputs.py b/sdk/python/pulumi_aws_native/redshiftserverless/outputs.py index cf321871e0..5f3c866cb4 100644 --- a/sdk/python/pulumi_aws_native/redshiftserverless/outputs.py +++ b/sdk/python/pulumi_aws_native/redshiftserverless/outputs.py @@ -359,6 +359,7 @@ def __init__(__self__, *, :param bool enhanced_vpc_routing: The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC. :param int max_capacity: The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity is specified in RPUs. :param str namespace_name: The namespace the workgroup is associated with. + :param 'WorkgroupPerformanceTarget' price_performance_target: An object that represents the price performance target settings for the workgroup. :param bool publicly_accessible: A value that specifies whether the workgroup can be accessible from a public network. :param Sequence[str] security_group_ids: An array of security group IDs to associate with the workgroup. :param 'WorkgroupStatus' status: The status of the workgroup. @@ -457,6 +458,9 @@ def namespace_name(self) -> Optional[str]: @property @pulumi.getter(name="pricePerformanceTarget") def price_performance_target(self) -> Optional['outputs.WorkgroupPerformanceTarget']: + """ + An object that represents the price performance target settings for the workgroup. + """ return pulumi.get(self, "price_performance_target") @property @@ -709,6 +713,10 @@ class WorkgroupPerformanceTarget(dict): def __init__(__self__, *, level: Optional[int] = None, status: Optional['WorkgroupPerformanceTargetStatus'] = None): + """ + :param int level: The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + :param 'WorkgroupPerformanceTargetStatus' status: Whether the price performance target is enabled for the workgroup. + """ if level is not None: pulumi.set(__self__, "level", level) if status is not None: @@ -717,11 +725,17 @@ def __init__(__self__, *, @property @pulumi.getter def level(self) -> Optional[int]: + """ + The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE. + """ return pulumi.get(self, "level") @property @pulumi.getter def status(self) -> Optional['WorkgroupPerformanceTargetStatus']: + """ + Whether the price performance target is enabled for the workgroup. + """ return pulumi.get(self, "status") diff --git a/sdk/python/pulumi_aws_native/s3/_inputs.py b/sdk/python/pulumi_aws_native/s3/_inputs.py index 74e1dcdc3b..718ae2698c 100644 --- a/sdk/python/pulumi_aws_native/s3/_inputs.py +++ b/sdk/python/pulumi_aws_native/s3/_inputs.py @@ -62,10 +62,6 @@ 'BucketLifecycleConfigurationArgsDict', 'BucketLoggingConfigurationArgs', 'BucketLoggingConfigurationArgsDict', - 'BucketMetadataTableConfigurationArgs', - 'BucketMetadataTableConfigurationArgsDict', - 'BucketMetadataTableErrorArgs', - 'BucketMetadataTableErrorArgsDict', 'BucketMetricsConfigurationArgs', 'BucketMetricsConfigurationArgsDict', 'BucketMetricsArgs', @@ -118,8 +114,6 @@ 'BucketRuleArgsDict', 'BucketS3KeyFilterArgs', 'BucketS3KeyFilterArgsDict', - 'BucketS3TablesDestinationArgs', - 'BucketS3TablesDestinationArgsDict', 'BucketServerSideEncryptionByDefaultArgs', 'BucketServerSideEncryptionByDefaultArgsDict', 'BucketServerSideEncryptionRuleArgs', @@ -1704,120 +1698,6 @@ def target_object_key_format(self, value: Optional[pulumi.Input['BucketTargetObj pulumi.set(self, "target_object_key_format", value) -if not MYPY: - class BucketMetadataTableConfigurationArgsDict(TypedDict): - s3_tables_destination: pulumi.Input['BucketS3TablesDestinationArgsDict'] - error: NotRequired[pulumi.Input['BucketMetadataTableErrorArgsDict']] - """ - Returns the Error value of the GetBucketMetadataTableConfiguration response. - """ - status: NotRequired[pulumi.Input[str]] - """ - Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - """ -elif False: - BucketMetadataTableConfigurationArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class BucketMetadataTableConfigurationArgs: - def __init__(__self__, *, - s3_tables_destination: pulumi.Input['BucketS3TablesDestinationArgs'], - error: Optional[pulumi.Input['BucketMetadataTableErrorArgs']] = None, - status: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input['BucketMetadataTableErrorArgs'] error: Returns the Error value of the GetBucketMetadataTableConfiguration response. - :param pulumi.Input[str] status: Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - """ - pulumi.set(__self__, "s3_tables_destination", s3_tables_destination) - if error is not None: - pulumi.set(__self__, "error", error) - if status is not None: - pulumi.set(__self__, "status", status) - - @property - @pulumi.getter(name="s3TablesDestination") - def s3_tables_destination(self) -> pulumi.Input['BucketS3TablesDestinationArgs']: - return pulumi.get(self, "s3_tables_destination") - - @s3_tables_destination.setter - def s3_tables_destination(self, value: pulumi.Input['BucketS3TablesDestinationArgs']): - pulumi.set(self, "s3_tables_destination", value) - - @property - @pulumi.getter - def error(self) -> Optional[pulumi.Input['BucketMetadataTableErrorArgs']]: - """ - Returns the Error value of the GetBucketMetadataTableConfiguration response. - """ - return pulumi.get(self, "error") - - @error.setter - def error(self, value: Optional[pulumi.Input['BucketMetadataTableErrorArgs']]): - pulumi.set(self, "error", value) - - @property - @pulumi.getter - def status(self) -> Optional[pulumi.Input[str]]: - """ - Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - """ - return pulumi.get(self, "status") - - @status.setter - def status(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "status", value) - - -if not MYPY: - class BucketMetadataTableErrorArgsDict(TypedDict): - error_code: pulumi.Input[str] - """ - If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ - error_message: pulumi.Input[str] - """ - If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ -elif False: - BucketMetadataTableErrorArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class BucketMetadataTableErrorArgs: - def __init__(__self__, *, - error_code: pulumi.Input[str], - error_message: pulumi.Input[str]): - """ - :param pulumi.Input[str] error_code: If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - :param pulumi.Input[str] error_message: If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ - pulumi.set(__self__, "error_code", error_code) - pulumi.set(__self__, "error_message", error_message) - - @property - @pulumi.getter(name="errorCode") - def error_code(self) -> pulumi.Input[str]: - """ - If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ - return pulumi.get(self, "error_code") - - @error_code.setter - def error_code(self, value: pulumi.Input[str]): - pulumi.set(self, "error_code", value) - - @property - @pulumi.getter(name="errorMessage") - def error_message(self) -> pulumi.Input[str]: - """ - If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ - return pulumi.get(self, "error_message") - - @error_message.setter - def error_message(self, value: pulumi.Input[str]): - pulumi.set(self, "error_message", value) - - if not MYPY: class BucketMetricsConfigurationArgsDict(TypedDict): """ @@ -3952,96 +3832,6 @@ def rules(self, value: pulumi.Input[Sequence[pulumi.Input['BucketFilterRuleArgs' pulumi.set(self, "rules", value) -if not MYPY: - class BucketS3TablesDestinationArgsDict(TypedDict): - table_bucket_arn: pulumi.Input[str] - """ - The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - """ - table_name: pulumi.Input[str] - """ - The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - """ - table_arn: NotRequired[pulumi.Input[str]] - """ - The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - """ - table_namespace: NotRequired[pulumi.Input[str]] - """ - The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - """ -elif False: - BucketS3TablesDestinationArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class BucketS3TablesDestinationArgs: - def __init__(__self__, *, - table_bucket_arn: pulumi.Input[str], - table_name: pulumi.Input[str], - table_arn: Optional[pulumi.Input[str]] = None, - table_namespace: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] table_bucket_arn: The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - :param pulumi.Input[str] table_name: The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - :param pulumi.Input[str] table_arn: The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - :param pulumi.Input[str] table_namespace: The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - """ - pulumi.set(__self__, "table_bucket_arn", table_bucket_arn) - pulumi.set(__self__, "table_name", table_name) - if table_arn is not None: - pulumi.set(__self__, "table_arn", table_arn) - if table_namespace is not None: - pulumi.set(__self__, "table_namespace", table_namespace) - - @property - @pulumi.getter(name="tableBucketArn") - def table_bucket_arn(self) -> pulumi.Input[str]: - """ - The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - """ - return pulumi.get(self, "table_bucket_arn") - - @table_bucket_arn.setter - def table_bucket_arn(self, value: pulumi.Input[str]): - pulumi.set(self, "table_bucket_arn", value) - - @property - @pulumi.getter(name="tableName") - def table_name(self) -> pulumi.Input[str]: - """ - The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - """ - return pulumi.get(self, "table_name") - - @table_name.setter - def table_name(self, value: pulumi.Input[str]): - pulumi.set(self, "table_name", value) - - @property - @pulumi.getter(name="tableArn") - def table_arn(self) -> Optional[pulumi.Input[str]]: - """ - The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - """ - return pulumi.get(self, "table_arn") - - @table_arn.setter - def table_arn(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "table_arn", value) - - @property - @pulumi.getter(name="tableNamespace") - def table_namespace(self) -> Optional[pulumi.Input[str]]: - """ - The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - """ - return pulumi.get(self, "table_namespace") - - @table_namespace.setter - def table_namespace(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "table_namespace", value) - - if not MYPY: class BucketServerSideEncryptionByDefaultArgsDict(TypedDict): """ diff --git a/sdk/python/pulumi_aws_native/s3/bucket.py b/sdk/python/pulumi_aws_native/s3/bucket.py index b2a0601416..9f5336c7ac 100644 --- a/sdk/python/pulumi_aws_native/s3/bucket.py +++ b/sdk/python/pulumi_aws_native/s3/bucket.py @@ -34,7 +34,6 @@ def __init__(__self__, *, inventory_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationArgs']]]] = None, lifecycle_configuration: Optional[pulumi.Input['BucketLifecycleConfigurationArgs']] = None, logging_configuration: Optional[pulumi.Input['BucketLoggingConfigurationArgs']] = None, - metadata_table_configuration: Optional[pulumi.Input['BucketMetadataTableConfigurationArgs']] = None, metrics_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['BucketMetricsConfigurationArgs']]]] = None, notification_configuration: Optional[pulumi.Input['BucketNotificationConfigurationArgs']] = None, object_lock_configuration: Optional[pulumi.Input['BucketObjectLockConfigurationArgs']] = None, @@ -98,8 +97,6 @@ def __init__(__self__, *, pulumi.set(__self__, "lifecycle_configuration", lifecycle_configuration) if logging_configuration is not None: pulumi.set(__self__, "logging_configuration", logging_configuration) - if metadata_table_configuration is not None: - pulumi.set(__self__, "metadata_table_configuration", metadata_table_configuration) if metrics_configurations is not None: pulumi.set(__self__, "metrics_configurations", metrics_configurations) if notification_configuration is not None: @@ -245,15 +242,6 @@ def logging_configuration(self) -> Optional[pulumi.Input['BucketLoggingConfigura def logging_configuration(self, value: Optional[pulumi.Input['BucketLoggingConfigurationArgs']]): pulumi.set(self, "logging_configuration", value) - @property - @pulumi.getter(name="metadataTableConfiguration") - def metadata_table_configuration(self) -> Optional[pulumi.Input['BucketMetadataTableConfigurationArgs']]: - return pulumi.get(self, "metadata_table_configuration") - - @metadata_table_configuration.setter - def metadata_table_configuration(self, value: Optional[pulumi.Input['BucketMetadataTableConfigurationArgs']]): - pulumi.set(self, "metadata_table_configuration", value) - @property @pulumi.getter(name="metricsConfigurations") def metrics_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketMetricsConfigurationArgs']]]]: @@ -396,7 +384,6 @@ def __init__(__self__, inventory_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BucketInventoryConfigurationArgs', 'BucketInventoryConfigurationArgsDict']]]]] = None, lifecycle_configuration: Optional[pulumi.Input[Union['BucketLifecycleConfigurationArgs', 'BucketLifecycleConfigurationArgsDict']]] = None, logging_configuration: Optional[pulumi.Input[Union['BucketLoggingConfigurationArgs', 'BucketLoggingConfigurationArgsDict']]] = None, - metadata_table_configuration: Optional[pulumi.Input[Union['BucketMetadataTableConfigurationArgs', 'BucketMetadataTableConfigurationArgsDict']]] = None, metrics_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BucketMetricsConfigurationArgs', 'BucketMetricsConfigurationArgsDict']]]]] = None, notification_configuration: Optional[pulumi.Input[Union['BucketNotificationConfigurationArgs', 'BucketNotificationConfigurationArgsDict']]] = None, object_lock_configuration: Optional[pulumi.Input[Union['BucketObjectLockConfigurationArgs', 'BucketObjectLockConfigurationArgsDict']]] = None, @@ -1452,7 +1439,6 @@ def _internal_init(__self__, inventory_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BucketInventoryConfigurationArgs', 'BucketInventoryConfigurationArgsDict']]]]] = None, lifecycle_configuration: Optional[pulumi.Input[Union['BucketLifecycleConfigurationArgs', 'BucketLifecycleConfigurationArgsDict']]] = None, logging_configuration: Optional[pulumi.Input[Union['BucketLoggingConfigurationArgs', 'BucketLoggingConfigurationArgsDict']]] = None, - metadata_table_configuration: Optional[pulumi.Input[Union['BucketMetadataTableConfigurationArgs', 'BucketMetadataTableConfigurationArgsDict']]] = None, metrics_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BucketMetricsConfigurationArgs', 'BucketMetricsConfigurationArgsDict']]]]] = None, notification_configuration: Optional[pulumi.Input[Union['BucketNotificationConfigurationArgs', 'BucketNotificationConfigurationArgsDict']]] = None, object_lock_configuration: Optional[pulumi.Input[Union['BucketObjectLockConfigurationArgs', 'BucketObjectLockConfigurationArgsDict']]] = None, @@ -1482,7 +1468,6 @@ def _internal_init(__self__, __props__.__dict__["inventory_configurations"] = inventory_configurations __props__.__dict__["lifecycle_configuration"] = lifecycle_configuration __props__.__dict__["logging_configuration"] = logging_configuration - __props__.__dict__["metadata_table_configuration"] = metadata_table_configuration __props__.__dict__["metrics_configurations"] = metrics_configurations __props__.__dict__["notification_configuration"] = notification_configuration __props__.__dict__["object_lock_configuration"] = object_lock_configuration @@ -1535,7 +1520,6 @@ def get(resource_name: str, __props__.__dict__["inventory_configurations"] = None __props__.__dict__["lifecycle_configuration"] = None __props__.__dict__["logging_configuration"] = None - __props__.__dict__["metadata_table_configuration"] = None __props__.__dict__["metrics_configurations"] = None __props__.__dict__["notification_configuration"] = None __props__.__dict__["object_lock_configuration"] = None @@ -1666,11 +1650,6 @@ def logging_configuration(self) -> pulumi.Output[Optional['outputs.BucketLogging """ return pulumi.get(self, "logging_configuration") - @property - @pulumi.getter(name="metadataTableConfiguration") - def metadata_table_configuration(self) -> pulumi.Output[Optional['outputs.BucketMetadataTableConfiguration']]: - return pulumi.get(self, "metadata_table_configuration") - @property @pulumi.getter(name="metricsConfigurations") def metrics_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.BucketMetricsConfiguration']]]: diff --git a/sdk/python/pulumi_aws_native/s3/get_bucket.py b/sdk/python/pulumi_aws_native/s3/get_bucket.py index 42b6590b18..840a0517ad 100644 --- a/sdk/python/pulumi_aws_native/s3/get_bucket.py +++ b/sdk/python/pulumi_aws_native/s3/get_bucket.py @@ -26,7 +26,7 @@ @pulumi.output_type class GetBucketResult: - def __init__(__self__, accelerate_configuration=None, analytics_configurations=None, arn=None, bucket_encryption=None, cors_configuration=None, domain_name=None, dual_stack_domain_name=None, intelligent_tiering_configurations=None, inventory_configurations=None, lifecycle_configuration=None, logging_configuration=None, metadata_table_configuration=None, metrics_configurations=None, notification_configuration=None, object_lock_configuration=None, object_lock_enabled=None, ownership_controls=None, public_access_block_configuration=None, regional_domain_name=None, replication_configuration=None, tags=None, versioning_configuration=None, website_configuration=None, website_url=None): + def __init__(__self__, accelerate_configuration=None, analytics_configurations=None, arn=None, bucket_encryption=None, cors_configuration=None, domain_name=None, dual_stack_domain_name=None, intelligent_tiering_configurations=None, inventory_configurations=None, lifecycle_configuration=None, logging_configuration=None, metrics_configurations=None, notification_configuration=None, object_lock_configuration=None, object_lock_enabled=None, ownership_controls=None, public_access_block_configuration=None, regional_domain_name=None, replication_configuration=None, tags=None, versioning_configuration=None, website_configuration=None, website_url=None): if accelerate_configuration and not isinstance(accelerate_configuration, dict): raise TypeError("Expected argument 'accelerate_configuration' to be a dict") pulumi.set(__self__, "accelerate_configuration", accelerate_configuration) @@ -60,9 +60,6 @@ def __init__(__self__, accelerate_configuration=None, analytics_configurations=N if logging_configuration and not isinstance(logging_configuration, dict): raise TypeError("Expected argument 'logging_configuration' to be a dict") pulumi.set(__self__, "logging_configuration", logging_configuration) - if metadata_table_configuration and not isinstance(metadata_table_configuration, dict): - raise TypeError("Expected argument 'metadata_table_configuration' to be a dict") - pulumi.set(__self__, "metadata_table_configuration", metadata_table_configuration) if metrics_configurations and not isinstance(metrics_configurations, list): raise TypeError("Expected argument 'metrics_configurations' to be a list") pulumi.set(__self__, "metrics_configurations", metrics_configurations) @@ -196,11 +193,6 @@ def logging_configuration(self) -> Optional['outputs.BucketLoggingConfiguration' """ return pulumi.get(self, "logging_configuration") - @property - @pulumi.getter(name="metadataTableConfiguration") - def metadata_table_configuration(self) -> Optional['outputs.BucketMetadataTableConfiguration']: - return pulumi.get(self, "metadata_table_configuration") - @property @pulumi.getter(name="metricsConfigurations") def metrics_configurations(self) -> Optional[Sequence['outputs.BucketMetricsConfiguration']]: @@ -327,7 +319,6 @@ def __await__(self): inventory_configurations=self.inventory_configurations, lifecycle_configuration=self.lifecycle_configuration, logging_configuration=self.logging_configuration, - metadata_table_configuration=self.metadata_table_configuration, metrics_configurations=self.metrics_configurations, notification_configuration=self.notification_configuration, object_lock_configuration=self.object_lock_configuration, @@ -370,7 +361,6 @@ def get_bucket(bucket_name: Optional[str] = None, inventory_configurations=pulumi.get(__ret__, 'inventory_configurations'), lifecycle_configuration=pulumi.get(__ret__, 'lifecycle_configuration'), logging_configuration=pulumi.get(__ret__, 'logging_configuration'), - metadata_table_configuration=pulumi.get(__ret__, 'metadata_table_configuration'), metrics_configurations=pulumi.get(__ret__, 'metrics_configurations'), notification_configuration=pulumi.get(__ret__, 'notification_configuration'), object_lock_configuration=pulumi.get(__ret__, 'object_lock_configuration'), @@ -410,7 +400,6 @@ def get_bucket_output(bucket_name: Optional[pulumi.Input[str]] = None, inventory_configurations=pulumi.get(__response__, 'inventory_configurations'), lifecycle_configuration=pulumi.get(__response__, 'lifecycle_configuration'), logging_configuration=pulumi.get(__response__, 'logging_configuration'), - metadata_table_configuration=pulumi.get(__response__, 'metadata_table_configuration'), metrics_configurations=pulumi.get(__response__, 'metrics_configurations'), notification_configuration=pulumi.get(__response__, 'notification_configuration'), object_lock_configuration=pulumi.get(__response__, 'object_lock_configuration'), diff --git a/sdk/python/pulumi_aws_native/s3/outputs.py b/sdk/python/pulumi_aws_native/s3/outputs.py index b480fb06b4..9e38275ede 100644 --- a/sdk/python/pulumi_aws_native/s3/outputs.py +++ b/sdk/python/pulumi_aws_native/s3/outputs.py @@ -40,8 +40,6 @@ 'BucketLambdaConfiguration', 'BucketLifecycleConfiguration', 'BucketLoggingConfiguration', - 'BucketMetadataTableConfiguration', - 'BucketMetadataTableError', 'BucketMetrics', 'BucketMetricsConfiguration', 'BucketNoncurrentVersionExpiration', @@ -68,7 +66,6 @@ 'BucketRoutingRuleCondition', 'BucketRule', 'BucketS3KeyFilter', - 'BucketS3TablesDestination', 'BucketServerSideEncryptionByDefault', 'BucketServerSideEncryptionRule', 'BucketSourceSelectionCriteria', @@ -1370,109 +1367,6 @@ def target_object_key_format(self) -> Optional['outputs.BucketTargetObjectKeyFor return pulumi.get(self, "target_object_key_format") -@pulumi.output_type -class BucketMetadataTableConfiguration(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "s3TablesDestination": - suggest = "s3_tables_destination" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in BucketMetadataTableConfiguration. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - BucketMetadataTableConfiguration.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - BucketMetadataTableConfiguration.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - s3_tables_destination: 'outputs.BucketS3TablesDestination', - error: Optional['outputs.BucketMetadataTableError'] = None, - status: Optional[str] = None): - """ - :param 'BucketMetadataTableError' error: Returns the Error value of the GetBucketMetadataTableConfiguration response. - :param str status: Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - """ - pulumi.set(__self__, "s3_tables_destination", s3_tables_destination) - if error is not None: - pulumi.set(__self__, "error", error) - if status is not None: - pulumi.set(__self__, "status", status) - - @property - @pulumi.getter(name="s3TablesDestination") - def s3_tables_destination(self) -> 'outputs.BucketS3TablesDestination': - return pulumi.get(self, "s3_tables_destination") - - @property - @pulumi.getter - def error(self) -> Optional['outputs.BucketMetadataTableError']: - """ - Returns the Error value of the GetBucketMetadataTableConfiguration response. - """ - return pulumi.get(self, "error") - - @property - @pulumi.getter - def status(self) -> Optional[str]: - """ - Returns the Status value of the GetBucketMetadataTableConfigurationResult response. This value indicates the status of the metadata table. The status values are:
CREATING - The metadata table is in the process of being created in the specified table bucket.
ACTIVE - The metadata table has been created successfully and records are being delivered to the table.
FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver records. - """ - return pulumi.get(self, "status") - - -@pulumi.output_type -class BucketMetadataTableError(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "errorCode": - suggest = "error_code" - elif key == "errorMessage": - suggest = "error_message" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in BucketMetadataTableError. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - BucketMetadataTableError.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - BucketMetadataTableError.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - error_code: str, - error_message: str): - """ - :param str error_code: If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - :param str error_message: If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ - pulumi.set(__self__, "error_code", error_code) - pulumi.set(__self__, "error_message", error_message) - - @property - @pulumi.getter(name="errorCode") - def error_code(self) -> str: - """ - If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ - return pulumi.get(self, "error_code") - - @property - @pulumi.getter(name="errorMessage") - def error_message(self) -> str: - """ - If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was unable to create the table, this structure contains the error code. The possible error codes and error messages are as follows:
AccessDeniedCreatingResources - You don't have sufficient permissions to create the required resources. Make sure that you have s3tables:CreateNamespace, s3tables:CreateTable, s3tables:GetTable and s3tables:PutTablePolicy permissions, and then try again. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
AccessDeniedWritingToTable - Unable to write to the metadata table because of missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata table. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
DestinationTableNotFound - The destination table doesn't exist. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
ServerInternalError - An internal error has occurred. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableAlreadyExists - The table that you specified already exists in the table bucket's namespace. Specify a different table name. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration.
TableBucketNotFound - The table bucket that you specified doesn't exist in this AWS Region and account. Create or choose a different table bucket. To create a new metadata table, you must delete the metadata configuration for this bucket, and then create a new metadata configuration. - """ - return pulumi.get(self, "error_message") - - @pulumi.output_type class BucketMetrics(dict): """ @@ -3178,82 +3072,6 @@ def rules(self) -> Sequence['outputs.BucketFilterRule']: return pulumi.get(self, "rules") -@pulumi.output_type -class BucketS3TablesDestination(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "tableBucketArn": - suggest = "table_bucket_arn" - elif key == "tableName": - suggest = "table_name" - elif key == "tableArn": - suggest = "table_arn" - elif key == "tableNamespace": - suggest = "table_namespace" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in BucketS3TablesDestination. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - BucketS3TablesDestination.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - BucketS3TablesDestination.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - table_bucket_arn: str, - table_name: str, - table_arn: Optional[str] = None, - table_namespace: Optional[str] = None): - """ - :param str table_bucket_arn: The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - :param str table_name: The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - :param str table_arn: The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - :param str table_namespace: The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - """ - pulumi.set(__self__, "table_bucket_arn", table_bucket_arn) - pulumi.set(__self__, "table_name", table_name) - if table_arn is not None: - pulumi.set(__self__, "table_arn", table_arn) - if table_namespace is not None: - pulumi.set(__self__, "table_namespace", table_namespace) - - @property - @pulumi.getter(name="tableBucketArn") - def table_bucket_arn(self) -> str: - """ - The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the metadata table configuration. The destination table bucket must be in the same Region and AWS account as the general purpose bucket. - """ - return pulumi.get(self, "table_bucket_arn") - - @property - @pulumi.getter(name="tableName") - def table_name(self) -> str: - """ - The name for the metadata table in your metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - """ - return pulumi.get(self, "table_name") - - @property - @pulumi.getter(name="tableArn") - def table_arn(self) -> Optional[str]: - """ - The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The specified metadata table name must be unique within the aws_s3_metadata namespace in the destination table bucket. - """ - return pulumi.get(self, "table_arn") - - @property - @pulumi.getter(name="tableNamespace") - def table_namespace(self) -> Optional[str]: - """ - The table bucket namespace for the metadata table in your metadata table configuration. This value is always aws_s3_metadata. - """ - return pulumi.get(self, "table_namespace") - - @pulumi.output_type class BucketServerSideEncryptionByDefault(dict): """ diff --git a/sdk/python/pulumi_aws_native/s3tables/get_table_bucket.py b/sdk/python/pulumi_aws_native/s3tables/get_table_bucket.py index a8209d8bb0..01847bd7e5 100644 --- a/sdk/python/pulumi_aws_native/s3tables/get_table_bucket.py +++ b/sdk/python/pulumi_aws_native/s3tables/get_table_bucket.py @@ -36,11 +36,17 @@ def __init__(__self__, table_bucket_arn=None, unreferenced_file_removal=None): @property @pulumi.getter(name="tableBucketArn") def table_bucket_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the table bucket. + """ return pulumi.get(self, "table_bucket_arn") @property @pulumi.getter(name="unreferencedFileRemoval") def unreferenced_file_removal(self) -> Optional['outputs.TableBucketUnreferencedFileRemoval']: + """ + The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + """ return pulumi.get(self, "unreferenced_file_removal") @@ -58,6 +64,9 @@ def get_table_bucket(table_bucket_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTableBucketResult: """ Creates an Amazon S3 Tables table bucket in the same AWS Region where you create the AWS CloudFormation stack. + + + :param str table_bucket_arn: The Amazon Resource Name (ARN) of the table bucket. """ __args__ = dict() __args__['tableBucketArn'] = table_bucket_arn @@ -71,6 +80,9 @@ def get_table_bucket_output(table_bucket_arn: Optional[pulumi.Input[str]] = None opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetTableBucketResult]: """ Creates an Amazon S3 Tables table bucket in the same AWS Region where you create the AWS CloudFormation stack. + + + :param str table_bucket_arn: The Amazon Resource Name (ARN) of the table bucket. """ __args__ = dict() __args__['tableBucketArn'] = table_bucket_arn diff --git a/sdk/python/pulumi_aws_native/s3tables/get_table_bucket_policy.py b/sdk/python/pulumi_aws_native/s3tables/get_table_bucket_policy.py index 2f301e44dc..7e11c42b45 100644 --- a/sdk/python/pulumi_aws_native/s3tables/get_table_bucket_policy.py +++ b/sdk/python/pulumi_aws_native/s3tables/get_table_bucket_policy.py @@ -32,6 +32,9 @@ def __init__(__self__, resource_policy=None): @property @pulumi.getter(name="resourcePolicy") def resource_policy(self) -> Optional['outputs.TableBucketPolicyResourcePolicy']: + """ + The bucket policy JSON for the table bucket. + """ return pulumi.get(self, "resource_policy") @@ -48,6 +51,9 @@ def get_table_bucket_policy(table_bucket_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTableBucketPolicyResult: """ Applies an IAM resource policy to a table bucket. + + + :param str table_bucket_arn: The Amazon Resource Name (ARN) of the table bucket. """ __args__ = dict() __args__['tableBucketArn'] = table_bucket_arn @@ -60,6 +66,9 @@ def get_table_bucket_policy_output(table_bucket_arn: Optional[pulumi.Input[str]] opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetTableBucketPolicyResult]: """ Applies an IAM resource policy to a table bucket. + + + :param str table_bucket_arn: The Amazon Resource Name (ARN) of the table bucket. """ __args__ = dict() __args__['tableBucketArn'] = table_bucket_arn diff --git a/sdk/python/pulumi_aws_native/s3tables/table_bucket.py b/sdk/python/pulumi_aws_native/s3tables/table_bucket.py index 5edbd4cea4..8833716bce 100644 --- a/sdk/python/pulumi_aws_native/s3tables/table_bucket.py +++ b/sdk/python/pulumi_aws_native/s3tables/table_bucket.py @@ -26,6 +26,8 @@ def __init__(__self__, *, unreferenced_file_removal: Optional[pulumi.Input['TableBucketUnreferencedFileRemovalArgs']] = None): """ The set of arguments for constructing a TableBucket resource. + :param pulumi.Input[str] table_bucket_name: The name for the table bucket. + :param pulumi.Input['TableBucketUnreferencedFileRemovalArgs'] unreferenced_file_removal: The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . """ if table_bucket_name is not None: pulumi.set(__self__, "table_bucket_name", table_bucket_name) @@ -35,6 +37,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="tableBucketName") def table_bucket_name(self) -> Optional[pulumi.Input[str]]: + """ + The name for the table bucket. + """ return pulumi.get(self, "table_bucket_name") @table_bucket_name.setter @@ -44,6 +49,9 @@ def table_bucket_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="unreferencedFileRemoval") def unreferenced_file_removal(self) -> Optional[pulumi.Input['TableBucketUnreferencedFileRemovalArgs']]: + """ + The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + """ return pulumi.get(self, "unreferenced_file_removal") @unreferenced_file_removal.setter @@ -64,6 +72,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] table_bucket_name: The name for the table bucket. + :param pulumi.Input[Union['TableBucketUnreferencedFileRemovalArgs', 'TableBucketUnreferencedFileRemovalArgsDict']] unreferenced_file_removal: The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . """ ... @overload @@ -135,15 +145,24 @@ def get(resource_name: str, @property @pulumi.getter(name="tableBucketArn") def table_bucket_arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the table bucket. + """ return pulumi.get(self, "table_bucket_arn") @property @pulumi.getter(name="tableBucketName") def table_bucket_name(self) -> pulumi.Output[str]: + """ + The name for the table bucket. + """ return pulumi.get(self, "table_bucket_name") @property @pulumi.getter(name="unreferencedFileRemoval") def unreferenced_file_removal(self) -> pulumi.Output[Optional['outputs.TableBucketUnreferencedFileRemoval']]: + """ + The unreferenced file removal settings for your table bucket. Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the [*Amazon S3 User Guide*](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html) . + """ return pulumi.get(self, "unreferenced_file_removal") diff --git a/sdk/python/pulumi_aws_native/s3tables/table_bucket_policy.py b/sdk/python/pulumi_aws_native/s3tables/table_bucket_policy.py index f80deaeafa..0e349e604c 100644 --- a/sdk/python/pulumi_aws_native/s3tables/table_bucket_policy.py +++ b/sdk/python/pulumi_aws_native/s3tables/table_bucket_policy.py @@ -25,6 +25,8 @@ def __init__(__self__, *, table_bucket_arn: pulumi.Input[str]): """ The set of arguments for constructing a TableBucketPolicy resource. + :param pulumi.Input['TableBucketPolicyResourcePolicyArgs'] resource_policy: The bucket policy JSON for the table bucket. + :param pulumi.Input[str] table_bucket_arn: The Amazon Resource Name (ARN) of the table bucket. """ pulumi.set(__self__, "resource_policy", resource_policy) pulumi.set(__self__, "table_bucket_arn", table_bucket_arn) @@ -32,6 +34,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="resourcePolicy") def resource_policy(self) -> pulumi.Input['TableBucketPolicyResourcePolicyArgs']: + """ + The bucket policy JSON for the table bucket. + """ return pulumi.get(self, "resource_policy") @resource_policy.setter @@ -41,6 +46,9 @@ def resource_policy(self, value: pulumi.Input['TableBucketPolicyResourcePolicyAr @property @pulumi.getter(name="tableBucketArn") def table_bucket_arn(self) -> pulumi.Input[str]: + """ + The Amazon Resource Name (ARN) of the table bucket. + """ return pulumi.get(self, "table_bucket_arn") @table_bucket_arn.setter @@ -61,6 +69,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[Union['TableBucketPolicyResourcePolicyArgs', 'TableBucketPolicyResourcePolicyArgsDict']] resource_policy: The bucket policy JSON for the table bucket. + :param pulumi.Input[str] table_bucket_arn: The Amazon Resource Name (ARN) of the table bucket. """ ... @overload @@ -134,10 +144,16 @@ def get(resource_name: str, @property @pulumi.getter(name="resourcePolicy") def resource_policy(self) -> pulumi.Output['outputs.TableBucketPolicyResourcePolicy']: + """ + The bucket policy JSON for the table bucket. + """ return pulumi.get(self, "resource_policy") @property @pulumi.getter(name="tableBucketArn") def table_bucket_arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the table bucket. + """ return pulumi.get(self, "table_bucket_arn") diff --git a/sdk/python/pulumi_aws_native/sagemaker/_inputs.py b/sdk/python/pulumi_aws_native/sagemaker/_inputs.py index c4d55868e7..5814f57266 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/_inputs.py +++ b/sdk/python/pulumi_aws_native/sagemaker/_inputs.py @@ -3073,7 +3073,7 @@ class DomainDefaultSpaceSettingsArgsDict(TypedDict): """ custom_file_system_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgsDict']]]] """ - The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. """ custom_posix_user_config: NotRequired[pulumi.Input['DomainCustomPosixUserConfigArgsDict']] """ @@ -3116,7 +3116,7 @@ def __init__(__self__, *, """ A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called. :param pulumi.Input[str] execution_role: The execution role for the space. - :param pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]] custom_file_system_configs: The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + :param pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]] custom_file_system_configs: The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. :param pulumi.Input['DomainCustomPosixUserConfigArgs'] custom_posix_user_config: The Jupyter lab's custom posix user configurations. :param pulumi.Input['DomainJupyterLabAppSettingsArgs'] jupyter_lab_app_settings: The Jupyter lab's app settings. :param pulumi.Input['DomainJupyterServerAppSettingsArgs'] jupyter_server_app_settings: The Jupyter server's app settings. @@ -3156,7 +3156,7 @@ def execution_role(self, value: pulumi.Input[str]): @pulumi.getter(name="customFileSystemConfigs") def custom_file_system_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]]]: """ - The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. """ return pulumi.get(self, "custom_file_system_configs") @@ -3337,7 +3337,7 @@ class DomainEfsFileSystemConfigArgsDict(TypedDict): """ file_system_path: NotRequired[pulumi.Input[str]] """ - The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ elif False: DomainEfsFileSystemConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -3349,7 +3349,7 @@ def __init__(__self__, *, file_system_path: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] file_system_id: The ID of your Amazon EFS file system. - :param pulumi.Input[str] file_system_path: The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + :param pulumi.Input[str] file_system_path: The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ pulumi.set(__self__, "file_system_id", file_system_id) if file_system_path is not None: @@ -3371,7 +3371,7 @@ def file_system_id(self, value: pulumi.Input[str]): @pulumi.getter(name="fileSystemPath") def file_system_path(self) -> Optional[pulumi.Input[str]]: """ - The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ return pulumi.get(self, "file_system_path") @@ -4264,7 +4264,7 @@ class DomainUserSettingsArgsDict(TypedDict): """ custom_file_system_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgsDict']]]] """ - The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. """ @@ -4349,7 +4349,7 @@ def __init__(__self__, *, :param pulumi.Input['DomainCodeEditorAppSettingsArgs'] code_editor_app_settings: The Code Editor application settings. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. - :param pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + :param pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. :param pulumi.Input['DomainCustomPosixUserConfigArgs'] custom_posix_user_config: Details about the POSIX identity that is used for file system operations. @@ -4431,7 +4431,7 @@ def code_editor_app_settings(self, value: Optional[pulumi.Input['DomainCodeEdito @pulumi.getter(name="customFileSystemConfigs") def custom_file_system_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]]]: """ - The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. """ @@ -5814,7 +5814,7 @@ class InferenceComponentSpecificationArgsDict(TypedDict): """ model_name: NotRequired[pulumi.Input[str]] """ - The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. """ startup_parameters: NotRequired[pulumi.Input['InferenceComponentStartupParametersArgsDict']] """ @@ -5844,7 +5844,7 @@ def __init__(__self__, *, Omit this parameter if your request is meant to create an adapter inference component. An adapter inference component is loaded by a base inference component, and it uses the compute resources of the base inference component. :param pulumi.Input['InferenceComponentContainerSpecificationArgs'] container: Defines a container that provides the runtime environment for a model that you deploy with an inference component. - :param pulumi.Input[str] model_name: The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + :param pulumi.Input[str] model_name: The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. :param pulumi.Input['InferenceComponentStartupParametersArgs'] startup_parameters: Settings that take effect while the model container starts up. """ if base_inference_component_name is not None: @@ -5906,7 +5906,7 @@ def container(self, value: Optional[pulumi.Input['InferenceComponentContainerSpe @pulumi.getter(name="modelName") def model_name(self) -> Optional[pulumi.Input[str]]: """ - The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. """ return pulumi.get(self, "model_name") @@ -9834,11 +9834,11 @@ class ModelCardTrainingMetricArgsDict(TypedDict): """ name: pulumi.Input[str] """ - The name of the result from the SageMaker training job. + The name of the result from the SageMaker AI training job. """ value: pulumi.Input[float] """ - The value of a result from the SageMaker training job. + The value of a result from the SageMaker AI training job. """ notes: NotRequired[pulumi.Input[str]] """ @@ -9855,8 +9855,8 @@ def __init__(__self__, *, notes: Optional[pulumi.Input[str]] = None): """ training metric data. - :param pulumi.Input[str] name: The name of the result from the SageMaker training job. - :param pulumi.Input[float] value: The value of a result from the SageMaker training job. + :param pulumi.Input[str] name: The name of the result from the SageMaker AI training job. + :param pulumi.Input[float] value: The value of a result from the SageMaker AI training job. :param pulumi.Input[str] notes: Any additional notes describing the result of the training job. """ pulumi.set(__self__, "name", name) @@ -9868,7 +9868,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - The name of the result from the SageMaker training job. + The name of the result from the SageMaker AI training job. """ return pulumi.get(self, "name") @@ -9880,7 +9880,7 @@ def name(self, value: pulumi.Input[str]): @pulumi.getter def value(self) -> pulumi.Input[float]: """ - The value of a result from the SageMaker training job. + The value of a result from the SageMaker AI training job. """ return pulumi.get(self, "value") @@ -15923,7 +15923,7 @@ class MonitoringScheduleMonitoringJobDefinitionArgsDict(TypedDict): """ monitoring_inputs: pulumi.Input[Sequence[pulumi.Input['MonitoringScheduleMonitoringInputArgsDict']]] """ - The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. """ monitoring_output_config: pulumi.Input['MonitoringScheduleMonitoringOutputConfigArgsDict'] """ @@ -15971,7 +15971,7 @@ def __init__(__self__, *, """ Defines the monitoring job. :param pulumi.Input['MonitoringScheduleMonitoringAppSpecificationArgs'] monitoring_app_specification: Configures the monitoring job to run a specified Docker container image. - :param pulumi.Input[Sequence[pulumi.Input['MonitoringScheduleMonitoringInputArgs']]] monitoring_inputs: The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + :param pulumi.Input[Sequence[pulumi.Input['MonitoringScheduleMonitoringInputArgs']]] monitoring_inputs: The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. :param pulumi.Input['MonitoringScheduleMonitoringOutputConfigArgs'] monitoring_output_config: The array of outputs from the monitoring job to be uploaded to Amazon S3. :param pulumi.Input['MonitoringScheduleMonitoringResourcesArgs'] monitoring_resources: Identifies the resources, ML compute instances, and ML storage volumes to deploy for a monitoring job. In distributed processing, you specify more than one instance. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf. @@ -16010,7 +16010,7 @@ def monitoring_app_specification(self, value: pulumi.Input['MonitoringScheduleMo @pulumi.getter(name="monitoringInputs") def monitoring_inputs(self) -> pulumi.Input[Sequence[pulumi.Input['MonitoringScheduleMonitoringInputArgs']]]: """ - The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. """ return pulumi.get(self, "monitoring_inputs") @@ -17680,7 +17680,7 @@ class SpaceJupyterServerAppSettingsArgsDict(TypedDict): """ default_resource_spec: NotRequired[pulumi.Input['SpaceResourceSpecArgsDict']] """ - The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. """ lifecycle_config_arns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -17696,7 +17696,7 @@ def __init__(__self__, *, lifecycle_config_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The JupyterServer app settings. - :param pulumi.Input['SpaceResourceSpecArgs'] default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + :param pulumi.Input['SpaceResourceSpecArgs'] default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. :param pulumi.Input[Sequence[pulumi.Input[str]]] lifecycle_config_arns: A list of LifecycleConfigArns available for use with JupyterServer apps. """ if default_resource_spec is not None: @@ -17708,7 +17708,7 @@ def __init__(__self__, *, @pulumi.getter(name="defaultResourceSpec") def default_resource_spec(self) -> Optional[pulumi.Input['SpaceResourceSpecArgs']]: """ - The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. """ return pulumi.get(self, "default_resource_spec") @@ -17943,7 +17943,7 @@ class SpaceSettingsArgsDict(TypedDict): """ custom_file_systems: NotRequired[pulumi.Input[Sequence[pulumi.Input['SpaceCustomFileSystemArgsDict']]]] """ - A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. """ jupyter_lab_app_settings: NotRequired[pulumi.Input['SpaceJupyterLabAppSettingsArgsDict']] """ @@ -17978,7 +17978,7 @@ def __init__(__self__, *, A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. :param pulumi.Input['SpaceAppType'] app_type: The type of app created within the space. :param pulumi.Input['SpaceCodeEditorAppSettingsArgs'] code_editor_app_settings: The CodeEditor app settings. - :param pulumi.Input[Sequence[pulumi.Input['SpaceCustomFileSystemArgs']]] custom_file_systems: A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + :param pulumi.Input[Sequence[pulumi.Input['SpaceCustomFileSystemArgs']]] custom_file_systems: A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. :param pulumi.Input['SpaceJupyterLabAppSettingsArgs'] jupyter_lab_app_settings: The JupyterLab app settings. :param pulumi.Input['SpaceJupyterServerAppSettingsArgs'] jupyter_server_app_settings: The Jupyter server's app settings. :param pulumi.Input['SpaceKernelGatewayAppSettingsArgs'] kernel_gateway_app_settings: The kernel gateway app settings. @@ -18027,7 +18027,7 @@ def code_editor_app_settings(self, value: Optional[pulumi.Input['SpaceCodeEditor @pulumi.getter(name="customFileSystems") def custom_file_systems(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SpaceCustomFileSystemArgs']]]]: """ - A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. """ return pulumi.get(self, "custom_file_systems") @@ -18560,7 +18560,7 @@ class UserProfileEfsFileSystemConfigArgsDict(TypedDict): """ file_system_path: NotRequired[pulumi.Input[str]] """ - The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ elif False: UserProfileEfsFileSystemConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -18572,7 +18572,7 @@ def __init__(__self__, *, file_system_path: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] file_system_id: The ID of your Amazon EFS file system. - :param pulumi.Input[str] file_system_path: The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + :param pulumi.Input[str] file_system_path: The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ pulumi.set(__self__, "file_system_id", file_system_id) if file_system_path is not None: @@ -18594,7 +18594,7 @@ def file_system_id(self, value: pulumi.Input[str]): @pulumi.getter(name="fileSystemPath") def file_system_path(self) -> Optional[pulumi.Input[str]]: """ - The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ return pulumi.get(self, "file_system_path") @@ -19236,7 +19236,7 @@ class UserProfileUserSettingsArgsDict(TypedDict): """ custom_file_system_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomFileSystemConfigArgsDict']]]] """ - The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. """ @@ -19319,7 +19319,7 @@ def __init__(__self__, *, :param pulumi.Input['UserProfileCodeEditorAppSettingsArgs'] code_editor_app_settings: The Code Editor application settings. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. - :param pulumi.Input[Sequence[pulumi.Input['UserProfileCustomFileSystemConfigArgs']]] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + :param pulumi.Input[Sequence[pulumi.Input['UserProfileCustomFileSystemConfigArgs']]] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. :param pulumi.Input['UserProfileCustomPosixUserConfigArgs'] custom_posix_user_config: Details about the POSIX identity that is used for file system operations. @@ -19388,7 +19388,7 @@ def code_editor_app_settings(self, value: Optional[pulumi.Input['UserProfileCode @pulumi.getter(name="customFileSystemConfigs") def custom_file_system_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomFileSystemConfigArgs']]]]: """ - The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. """ diff --git a/sdk/python/pulumi_aws_native/sagemaker/outputs.py b/sdk/python/pulumi_aws_native/sagemaker/outputs.py index 58c1709bab..51d16f4191 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/outputs.py +++ b/sdk/python/pulumi_aws_native/sagemaker/outputs.py @@ -2550,7 +2550,7 @@ def __init__(__self__, *, """ A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called. :param str execution_role: The execution role for the space. - :param Sequence['DomainCustomFileSystemConfig'] custom_file_system_configs: The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + :param Sequence['DomainCustomFileSystemConfig'] custom_file_system_configs: The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. :param 'DomainCustomPosixUserConfig' custom_posix_user_config: The Jupyter lab's custom posix user configurations. :param 'DomainJupyterLabAppSettings' jupyter_lab_app_settings: The Jupyter lab's app settings. :param 'DomainJupyterServerAppSettings' jupyter_server_app_settings: The Jupyter server's app settings. @@ -2586,7 +2586,7 @@ def execution_role(self) -> str: @pulumi.getter(name="customFileSystemConfigs") def custom_file_system_configs(self) -> Optional[Sequence['outputs.DomainCustomFileSystemConfig']]: """ - The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a domain. Permitted users can access this file system in Amazon SageMaker AI Studio. """ return pulumi.get(self, "custom_file_system_configs") @@ -2759,7 +2759,7 @@ def __init__(__self__, *, file_system_path: Optional[str] = None): """ :param str file_system_id: The ID of your Amazon EFS file system. - :param str file_system_path: The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + :param str file_system_path: The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ pulumi.set(__self__, "file_system_id", file_system_id) if file_system_path is not None: @@ -2777,7 +2777,7 @@ def file_system_id(self) -> str: @pulumi.getter(name="fileSystemPath") def file_system_path(self) -> Optional[str]: """ - The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ return pulumi.get(self, "file_system_path") @@ -3621,7 +3621,7 @@ def __init__(__self__, *, :param 'DomainCodeEditorAppSettings' code_editor_app_settings: The Code Editor application settings. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. - :param Sequence['DomainCustomFileSystemConfig'] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + :param Sequence['DomainCustomFileSystemConfig'] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. :param 'DomainCustomPosixUserConfig' custom_posix_user_config: Details about the POSIX identity that is used for file system operations. @@ -3695,7 +3695,7 @@ def code_editor_app_settings(self) -> Optional['outputs.DomainCodeEditorAppSetti @pulumi.getter(name="customFileSystemConfigs") def custom_file_system_configs(self) -> Optional[Sequence['outputs.DomainCustomFileSystemConfig']]: """ - The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. """ @@ -4865,7 +4865,7 @@ def __init__(__self__, *, Omit this parameter if your request is meant to create an adapter inference component. An adapter inference component is loaded by a base inference component, and it uses the compute resources of the base inference component. :param 'InferenceComponentContainerSpecification' container: Defines a container that provides the runtime environment for a model that you deploy with an inference component. - :param str model_name: The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + :param str model_name: The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. :param 'InferenceComponentStartupParameters' startup_parameters: Settings that take effect while the model container starts up. """ if base_inference_component_name is not None: @@ -4915,7 +4915,7 @@ def container(self) -> Optional['outputs.InferenceComponentContainerSpecificatio @pulumi.getter(name="modelName") def model_name(self) -> Optional[str]: """ - The name of an existing SageMaker model object in your account that you want to deploy with the inference component. + The name of an existing SageMaker AI model object in your account that you want to deploy with the inference component. """ return pulumi.get(self, "model_name") @@ -8319,8 +8319,8 @@ def __init__(__self__, *, notes: Optional[str] = None): """ training metric data. - :param str name: The name of the result from the SageMaker training job. - :param float value: The value of a result from the SageMaker training job. + :param str name: The name of the result from the SageMaker AI training job. + :param float value: The value of a result from the SageMaker AI training job. :param str notes: Any additional notes describing the result of the training job. """ pulumi.set(__self__, "name", name) @@ -8332,7 +8332,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - The name of the result from the SageMaker training job. + The name of the result from the SageMaker AI training job. """ return pulumi.get(self, "name") @@ -8340,7 +8340,7 @@ def name(self) -> str: @pulumi.getter def value(self) -> float: """ - The value of a result from the SageMaker training job. + The value of a result from the SageMaker AI training job. """ return pulumi.get(self, "value") @@ -13509,7 +13509,7 @@ def __init__(__self__, *, """ Defines the monitoring job. :param 'MonitoringScheduleMonitoringAppSpecification' monitoring_app_specification: Configures the monitoring job to run a specified Docker container image. - :param Sequence['MonitoringScheduleMonitoringInput'] monitoring_inputs: The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + :param Sequence['MonitoringScheduleMonitoringInput'] monitoring_inputs: The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. :param 'MonitoringScheduleMonitoringOutputConfig' monitoring_output_config: The array of outputs from the monitoring job to be uploaded to Amazon S3. :param 'MonitoringScheduleMonitoringResources' monitoring_resources: Identifies the resources, ML compute instances, and ML storage volumes to deploy for a monitoring job. In distributed processing, you specify more than one instance. :param str role_arn: The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf. @@ -13544,7 +13544,7 @@ def monitoring_app_specification(self) -> 'outputs.MonitoringScheduleMonitoringA @pulumi.getter(name="monitoringInputs") def monitoring_inputs(self) -> Sequence['outputs.MonitoringScheduleMonitoringInput']: """ - The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker Endpoint. + The array of inputs for the monitoring job. Currently we support monitoring an Amazon SageMaker AI Endpoint. """ return pulumi.get(self, "monitoring_inputs") @@ -15119,7 +15119,7 @@ def __init__(__self__, *, lifecycle_config_arns: Optional[Sequence[str]] = None): """ The JupyterServer app settings. - :param 'SpaceResourceSpec' default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + :param 'SpaceResourceSpec' default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. :param Sequence[str] lifecycle_config_arns: A list of LifecycleConfigArns available for use with JupyterServer apps. """ if default_resource_spec is not None: @@ -15131,7 +15131,7 @@ def __init__(__self__, *, @pulumi.getter(name="defaultResourceSpec") def default_resource_spec(self) -> Optional['outputs.SpaceResourceSpec']: """ - The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker AI image used by the JupyterServer app. If you use the `LifecycleConfigArns` parameter, then this parameter is also required. """ return pulumi.get(self, "default_resource_spec") @@ -15371,7 +15371,7 @@ def __init__(__self__, *, A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. :param 'SpaceAppType' app_type: The type of app created within the space. :param 'SpaceCodeEditorAppSettings' code_editor_app_settings: The CodeEditor app settings. - :param Sequence['SpaceCustomFileSystem'] custom_file_systems: A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + :param Sequence['SpaceCustomFileSystem'] custom_file_systems: A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. :param 'SpaceJupyterLabAppSettings' jupyter_lab_app_settings: The JupyterLab app settings. :param 'SpaceJupyterServerAppSettings' jupyter_server_app_settings: The Jupyter server's app settings. :param 'SpaceKernelGatewayAppSettings' kernel_gateway_app_settings: The kernel gateway app settings. @@ -15412,7 +15412,7 @@ def code_editor_app_settings(self) -> Optional['outputs.SpaceCodeEditorAppSettin @pulumi.getter(name="customFileSystems") def custom_file_systems(self) -> Optional[Sequence['outputs.SpaceCustomFileSystem']]: """ - A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio. + A file system, created by you, that you assign to a space for an Amazon SageMaker AI Domain. Permitted users can access this file system in Amazon SageMaker AI Studio. """ return pulumi.get(self, "custom_file_systems") @@ -15922,7 +15922,7 @@ def __init__(__self__, *, file_system_path: Optional[str] = None): """ :param str file_system_id: The ID of your Amazon EFS file system. - :param str file_system_path: The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + :param str file_system_path: The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ pulumi.set(__self__, "file_system_id", file_system_id) if file_system_path is not None: @@ -15940,7 +15940,7 @@ def file_system_id(self) -> str: @pulumi.getter(name="fileSystemPath") def file_system_path(self) -> Optional[str]: """ - The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below. + The path to the file system directory that is accessible in Amazon SageMaker AI Studio. Permitted users can access only this directory and below. """ return pulumi.get(self, "file_system_path") @@ -16563,7 +16563,7 @@ def __init__(__self__, *, :param 'UserProfileCodeEditorAppSettings' code_editor_app_settings: The Code Editor application settings. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. - :param Sequence['UserProfileCustomFileSystemConfig'] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + :param Sequence['UserProfileCustomFileSystemConfig'] custom_file_system_configs: The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. :param 'UserProfileCustomPosixUserConfig' custom_posix_user_config: Details about the POSIX identity that is used for file system operations. @@ -16628,7 +16628,7 @@ def code_editor_app_settings(self) -> Optional['outputs.UserProfileCodeEditorApp @pulumi.getter(name="customFileSystemConfigs") def custom_file_system_configs(self) -> Optional[Sequence['outputs.UserProfileCustomFileSystemConfig']]: """ - The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio. + The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker AI Studio. SageMaker applies these settings only to private spaces that the user creates in the domain. SageMaker doesn't apply these settings to shared spaces. """ diff --git a/sdk/python/pulumi_aws_native/transfer/_enums.py b/sdk/python/pulumi_aws_native/transfer/_enums.py index d4e18a4258..0cf344c358 100644 --- a/sdk/python/pulumi_aws_native/transfer/_enums.py +++ b/sdk/python/pulumi_aws_native/transfer/_enums.py @@ -23,6 +23,7 @@ 'ServerProtocol', 'ServerSetStatOption', 'ServerSftpAuthenticationMethods', + 'ServerState', 'ServerTlsSessionResumptionMode', 'UserHomeDirectoryType', 'UserMapType', @@ -174,6 +175,15 @@ class ServerSftpAuthenticationMethods(str, Enum): PUBLIC_KEY_AND_PASSWORD = "PUBLIC_KEY_AND_PASSWORD" +class ServerState(str, Enum): + OFFLINE = "OFFLINE" + ONLINE = "ONLINE" + STARTING = "STARTING" + STOPPING = "STOPPING" + START_FAILED = "START_FAILED" + STOP_FAILED = "STOP_FAILED" + + class ServerTlsSessionResumptionMode(str, Enum): DISABLED = "DISABLED" ENABLED = "ENABLED" diff --git a/sdk/python/pulumi_aws_native/transfer/get_server.py b/sdk/python/pulumi_aws_native/transfer/get_server.py index 359af95066..9e495ee834 100644 --- a/sdk/python/pulumi_aws_native/transfer/get_server.py +++ b/sdk/python/pulumi_aws_native/transfer/get_server.py @@ -26,7 +26,7 @@ @pulumi.output_type class GetServerResult: - def __init__(__self__, arn=None, as2_service_managed_egress_ip_addresses=None, certificate=None, endpoint_details=None, endpoint_type=None, identity_provider_details=None, logging_role=None, post_authentication_login_banner=None, pre_authentication_login_banner=None, protocol_details=None, protocols=None, s3_storage_options=None, security_policy_name=None, server_id=None, structured_log_destinations=None, tags=None, workflow_details=None): + def __init__(__self__, arn=None, as2_service_managed_egress_ip_addresses=None, certificate=None, endpoint_details=None, endpoint_type=None, identity_provider_details=None, logging_role=None, post_authentication_login_banner=None, pre_authentication_login_banner=None, protocol_details=None, protocols=None, s3_storage_options=None, security_policy_name=None, server_id=None, state=None, structured_log_destinations=None, tags=None, workflow_details=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -69,6 +69,9 @@ def __init__(__self__, arn=None, as2_service_managed_egress_ip_addresses=None, c if server_id and not isinstance(server_id, str): raise TypeError("Expected argument 'server_id' to be a str") pulumi.set(__self__, "server_id", server_id) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) if structured_log_destinations and not isinstance(structured_log_destinations, list): raise TypeError("Expected argument 'structured_log_destinations' to be a list") pulumi.set(__self__, "structured_log_destinations", structured_log_destinations) @@ -247,6 +250,11 @@ def server_id(self) -> Optional[str]: """ return pulumi.get(self, "server_id") + @property + @pulumi.getter + def state(self) -> Optional['ServerState']: + return pulumi.get(self, "state") + @property @pulumi.getter(name="structuredLogDestinations") def structured_log_destinations(self) -> Optional[Sequence[str]]: @@ -304,6 +312,7 @@ def __await__(self): s3_storage_options=self.s3_storage_options, security_policy_name=self.security_policy_name, server_id=self.server_id, + state=self.state, structured_log_destinations=self.structured_log_destinations, tags=self.tags, workflow_details=self.workflow_details) @@ -339,6 +348,7 @@ def get_server(arn: Optional[str] = None, s3_storage_options=pulumi.get(__ret__, 's3_storage_options'), security_policy_name=pulumi.get(__ret__, 'security_policy_name'), server_id=pulumi.get(__ret__, 'server_id'), + state=pulumi.get(__ret__, 'state'), structured_log_destinations=pulumi.get(__ret__, 'structured_log_destinations'), tags=pulumi.get(__ret__, 'tags'), workflow_details=pulumi.get(__ret__, 'workflow_details')) @@ -371,6 +381,7 @@ def get_server_output(arn: Optional[pulumi.Input[str]] = None, s3_storage_options=pulumi.get(__response__, 's3_storage_options'), security_policy_name=pulumi.get(__response__, 'security_policy_name'), server_id=pulumi.get(__response__, 'server_id'), + state=pulumi.get(__response__, 'state'), structured_log_destinations=pulumi.get(__response__, 'structured_log_destinations'), tags=pulumi.get(__response__, 'tags'), workflow_details=pulumi.get(__response__, 'workflow_details'))) diff --git a/sdk/python/pulumi_aws_native/transfer/server.py b/sdk/python/pulumi_aws_native/transfer/server.py index ba168ff109..f39c438224 100644 --- a/sdk/python/pulumi_aws_native/transfer/server.py +++ b/sdk/python/pulumi_aws_native/transfer/server.py @@ -983,6 +983,7 @@ def _internal_init(__self__, __props__.__dict__["arn"] = None __props__.__dict__["as2_service_managed_egress_ip_addresses"] = None __props__.__dict__["server_id"] = None + __props__.__dict__["state"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["domain", "identityProviderType"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Server, __self__).__init__( @@ -1023,6 +1024,7 @@ def get(resource_name: str, __props__.__dict__["s3_storage_options"] = None __props__.__dict__["security_policy_name"] = None __props__.__dict__["server_id"] = None + __props__.__dict__["state"] = None __props__.__dict__["structured_log_destinations"] = None __props__.__dict__["tags"] = None __props__.__dict__["workflow_details"] = None @@ -1218,6 +1220,11 @@ def server_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "server_id") + @property + @pulumi.getter + def state(self) -> pulumi.Output['ServerState']: + return pulumi.get(self, "state") + @property @pulumi.getter(name="structuredLogDestinations") def structured_log_destinations(self) -> pulumi.Output[Optional[Sequence[str]]]: diff --git a/sdk/python/pulumi_aws_native/vpclattice/_enums.py b/sdk/python/pulumi_aws_native/vpclattice/_enums.py index 66c0671b0f..23110309c0 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/_enums.py +++ b/sdk/python/pulumi_aws_native/vpclattice/_enums.py @@ -56,6 +56,9 @@ class ListenerProtocol(str, Enum): class ResourceConfigurationAuthType(str, Enum): + """ + The auth type for the resource configuration. + """ NONE = "NONE" AWS_IAM = "AWS_IAM" @@ -67,10 +70,21 @@ class ResourceConfigurationDnsResourceIpAddressType(str, Enum): class ResourceConfigurationProtocolType(str, Enum): + """ + (SINGLE, GROUP) The protocol accepted by the resource configuration. + """ TCP = "TCP" class ResourceConfigurationType(str, Enum): + """ + The type of resource configuration. A resource configuration can be one of the following types: + + - *SINGLE* - A single resource. + - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + - *CHILD* - A single resource that is part of a group resource configuration. + - *ARN* - An AWS resource. + """ GROUP = "GROUP" CHILD = "CHILD" SINGLE = "SINGLE" @@ -78,6 +92,9 @@ class ResourceConfigurationType(str, Enum): class ResourceGatewayIpAddressType(str, Enum): + """ + The type of IP address used by the resource gateway. + """ IPV4 = "IPV4" IPV6 = "IPV6" DUALSTACK = "DUALSTACK" diff --git a/sdk/python/pulumi_aws_native/vpclattice/_inputs.py b/sdk/python/pulumi_aws_native/vpclattice/_inputs.py index f9e953229f..0523795f3e 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/_inputs.py +++ b/sdk/python/pulumi_aws_native/vpclattice/_inputs.py @@ -243,6 +243,13 @@ def weight(self, value: Optional[pulumi.Input[int]]): if not MYPY: class ResourceConfigurationDefinition0PropertiesArgsDict(TypedDict): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ ip_resource: pulumi.Input[str] elif False: ResourceConfigurationDefinition0PropertiesArgsDict: TypeAlias = Mapping[str, Any] @@ -251,6 +258,13 @@ class ResourceConfigurationDefinition0PropertiesArgsDict(TypedDict): class ResourceConfigurationDefinition0PropertiesArgs: def __init__(__self__, *, ip_resource: pulumi.Input[str]): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ pulumi.set(__self__, "ip_resource", ip_resource) @property @@ -265,6 +279,13 @@ def ip_resource(self, value: pulumi.Input[str]): if not MYPY: class ResourceConfigurationDefinition1PropertiesArgsDict(TypedDict): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ arn_resource: pulumi.Input[str] elif False: ResourceConfigurationDefinition1PropertiesArgsDict: TypeAlias = Mapping[str, Any] @@ -273,6 +294,13 @@ class ResourceConfigurationDefinition1PropertiesArgsDict(TypedDict): class ResourceConfigurationDefinition1PropertiesArgs: def __init__(__self__, *, arn_resource: pulumi.Input[str]): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ pulumi.set(__self__, "arn_resource", arn_resource) @property @@ -287,6 +315,13 @@ def arn_resource(self, value: pulumi.Input[str]): if not MYPY: class ResourceConfigurationDefinition2PropertiesArgsDict(TypedDict): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ dns_resource: pulumi.Input['ResourceConfigurationDnsResourceArgsDict'] elif False: ResourceConfigurationDefinition2PropertiesArgsDict: TypeAlias = Mapping[str, Any] @@ -295,6 +330,13 @@ class ResourceConfigurationDefinition2PropertiesArgsDict(TypedDict): class ResourceConfigurationDefinition2PropertiesArgs: def __init__(__self__, *, dns_resource: pulumi.Input['ResourceConfigurationDnsResourceArgs']): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ pulumi.set(__self__, "dns_resource", dns_resource) @property @@ -967,6 +1009,9 @@ def hosted_zone_id(self, value: Optional[pulumi.Input[str]]): if not MYPY: class ServiceNetworkSharingConfigArgsDict(TypedDict): enabled: pulumi.Input[bool] + """ + Specify if the service network should be enabled for sharing. + """ elif False: ServiceNetworkSharingConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -974,11 +1019,17 @@ class ServiceNetworkSharingConfigArgsDict(TypedDict): class ServiceNetworkSharingConfigArgs: def __init__(__self__, *, enabled: pulumi.Input[bool]): + """ + :param pulumi.Input[bool] enabled: Specify if the service network should be enabled for sharing. + """ pulumi.set(__self__, "enabled", enabled) @property @pulumi.getter def enabled(self) -> pulumi.Input[bool]: + """ + Specify if the service network should be enabled for sharing. + """ return pulumi.get(self, "enabled") @enabled.setter diff --git a/sdk/python/pulumi_aws_native/vpclattice/get_resource_configuration.py b/sdk/python/pulumi_aws_native/vpclattice/get_resource_configuration.py index 7e8ae9aa50..f091878301 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/get_resource_configuration.py +++ b/sdk/python/pulumi_aws_native/vpclattice/get_resource_configuration.py @@ -52,36 +52,61 @@ def __init__(__self__, allow_association_to_sharable_service_network=None, arn=N @property @pulumi.getter(name="allowAssociationToSharableServiceNetwork") def allow_association_to_sharable_service_network(self) -> Optional[bool]: + """ + Specifies whether the resource configuration can be associated with a sharable service network. + """ return pulumi.get(self, "allow_association_to_sharable_service_network") @property @pulumi.getter def arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the resource configuration. + """ return pulumi.get(self, "arn") @property @pulumi.getter def id(self) -> Optional[str]: + """ + The ID of the resource configuration. + """ return pulumi.get(self, "id") @property @pulumi.getter def name(self) -> Optional[str]: + """ + The name of the resource configuration. + """ return pulumi.get(self, "name") @property @pulumi.getter(name="portRanges") def port_ranges(self) -> Optional[Sequence[str]]: + """ + (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + """ return pulumi.get(self, "port_ranges") @property @pulumi.getter(name="resourceConfigurationDefinition") def resource_configuration_definition(self) -> Optional[Any]: + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ return pulumi.get(self, "resource_configuration_definition") @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + """ + The tags for the resource configuration. + """ return pulumi.get(self, "tags") @@ -104,6 +129,9 @@ def get_resource_configuration(arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResourceConfigurationResult: """ VpcLattice ResourceConfiguration CFN resource + + + :param str arn: The Amazon Resource Name (ARN) of the resource configuration. """ __args__ = dict() __args__['arn'] = arn @@ -122,6 +150,9 @@ def get_resource_configuration_output(arn: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetResourceConfigurationResult]: """ VpcLattice ResourceConfiguration CFN resource + + + :param str arn: The Amazon Resource Name (ARN) of the resource configuration. """ __args__ = dict() __args__['arn'] = arn diff --git a/sdk/python/pulumi_aws_native/vpclattice/get_resource_gateway.py b/sdk/python/pulumi_aws_native/vpclattice/get_resource_gateway.py index da32918c4b..b659afa0ca 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/get_resource_gateway.py +++ b/sdk/python/pulumi_aws_native/vpclattice/get_resource_gateway.py @@ -41,11 +41,17 @@ def __init__(__self__, arn=None, id=None, security_group_ids=None, tags=None): @property @pulumi.getter def arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the resource gateway. + """ return pulumi.get(self, "arn") @property @pulumi.getter def id(self) -> Optional[str]: + """ + The ID of the resource gateway. + """ return pulumi.get(self, "id") @property @@ -59,6 +65,9 @@ def security_group_ids(self) -> Optional[Sequence[str]]: @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + """ + The tags for the resource gateway. + """ return pulumi.get(self, "tags") @@ -78,6 +87,9 @@ def get_resource_gateway(arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResourceGatewayResult: """ Creates a resource gateway for a service. + + + :param str arn: The Amazon Resource Name (ARN) of the resource gateway. """ __args__ = dict() __args__['arn'] = arn @@ -93,6 +105,9 @@ def get_resource_gateway_output(arn: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetResourceGatewayResult]: """ Creates a resource gateway for a service. + + + :param str arn: The Amazon Resource Name (ARN) of the resource gateway. """ __args__ = dict() __args__['arn'] = arn diff --git a/sdk/python/pulumi_aws_native/vpclattice/get_service_network.py b/sdk/python/pulumi_aws_native/vpclattice/get_service_network.py index ca43264d9d..52dddc7427 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/get_service_network.py +++ b/sdk/python/pulumi_aws_native/vpclattice/get_service_network.py @@ -95,6 +95,9 @@ def last_updated_at(self) -> Optional[str]: @property @pulumi.getter(name="sharingConfig") def sharing_config(self) -> Optional['outputs.ServiceNetworkSharingConfig']: + """ + Specify if the service network should be enabled for sharing. + """ return pulumi.get(self, "sharing_config") @property diff --git a/sdk/python/pulumi_aws_native/vpclattice/get_service_network_resource_association.py b/sdk/python/pulumi_aws_native/vpclattice/get_service_network_resource_association.py index 92c7773d48..9de0caf2d5 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/get_service_network_resource_association.py +++ b/sdk/python/pulumi_aws_native/vpclattice/get_service_network_resource_association.py @@ -38,16 +38,25 @@ def __init__(__self__, arn=None, id=None, tags=None): @property @pulumi.getter def arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the association. + """ return pulumi.get(self, "arn") @property @pulumi.getter def id(self) -> Optional[str]: + """ + The ID of the association between the service network and resource configuration. + """ return pulumi.get(self, "id") @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + """ + A key-value pair to associate with a resource. + """ return pulumi.get(self, "tags") @@ -66,6 +75,9 @@ def get_service_network_resource_association(arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetServiceNetworkResourceAssociationResult: """ VpcLattice ServiceNetworkResourceAssociation CFN resource + + + :param str arn: The Amazon Resource Name (ARN) of the association. """ __args__ = dict() __args__['arn'] = arn @@ -80,6 +92,9 @@ def get_service_network_resource_association_output(arn: Optional[pulumi.Input[s opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetServiceNetworkResourceAssociationResult]: """ VpcLattice ServiceNetworkResourceAssociation CFN resource + + + :param str arn: The Amazon Resource Name (ARN) of the association. """ __args__ = dict() __args__['arn'] = arn diff --git a/sdk/python/pulumi_aws_native/vpclattice/outputs.py b/sdk/python/pulumi_aws_native/vpclattice/outputs.py index 800250382a..cf663c7a0d 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/outputs.py +++ b/sdk/python/pulumi_aws_native/vpclattice/outputs.py @@ -215,6 +215,13 @@ def weight(self) -> Optional[int]: @pulumi.output_type class ResourceConfigurationDefinition0Properties(dict): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -234,6 +241,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, ip_resource: str): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ pulumi.set(__self__, "ip_resource", ip_resource) @property @@ -244,6 +258,13 @@ def ip_resource(self) -> str: @pulumi.output_type class ResourceConfigurationDefinition1Properties(dict): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -263,6 +284,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, arn_resource: str): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ pulumi.set(__self__, "arn_resource", arn_resource) @property @@ -273,6 +301,13 @@ def arn_resource(self) -> str: @pulumi.output_type class ResourceConfigurationDefinition2Properties(dict): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -292,6 +327,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, dns_resource: 'outputs.ResourceConfigurationDnsResource'): + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ pulumi.set(__self__, "dns_resource", dns_resource) @property @@ -887,11 +929,17 @@ def hosted_zone_id(self) -> Optional[str]: class ServiceNetworkSharingConfig(dict): def __init__(__self__, *, enabled: bool): + """ + :param bool enabled: Specify if the service network should be enabled for sharing. + """ pulumi.set(__self__, "enabled", enabled) @property @pulumi.getter def enabled(self) -> bool: + """ + Specify if the service network should be enabled for sharing. + """ return pulumi.get(self, "enabled") diff --git a/sdk/python/pulumi_aws_native/vpclattice/resource_configuration.py b/sdk/python/pulumi_aws_native/vpclattice/resource_configuration.py index 67cc5da6fd..76b0a3a39a 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/resource_configuration.py +++ b/sdk/python/pulumi_aws_native/vpclattice/resource_configuration.py @@ -36,6 +36,25 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a ResourceConfiguration resource. + :param pulumi.Input[bool] allow_association_to_sharable_service_network: Specifies whether the resource configuration can be associated with a sharable service network. + :param pulumi.Input[str] name: The name of the resource configuration. + :param pulumi.Input[Sequence[pulumi.Input[str]]] port_ranges: (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + :param pulumi.Input['ResourceConfigurationProtocolType'] protocol_type: (SINGLE, GROUP) The protocol accepted by the resource configuration. + :param pulumi.Input['ResourceConfigurationAuthType'] resource_configuration_auth_type: The auth type for the resource configuration. + :param pulumi.Input[Union['ResourceConfigurationDefinition0PropertiesArgs', 'ResourceConfigurationDefinition1PropertiesArgs', 'ResourceConfigurationDefinition2PropertiesArgs']] resource_configuration_definition: Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + :param pulumi.Input[str] resource_configuration_group_id: The ID of the group resource configuration. + :param pulumi.Input['ResourceConfigurationType'] resource_configuration_type: The type of resource configuration. A resource configuration can be one of the following types: + + - *SINGLE* - A single resource. + - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + - *CHILD* - A single resource that is part of a group resource configuration. + - *ARN* - An AWS resource. + :param pulumi.Input[str] resource_gateway_id: The ID of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: The tags for the resource configuration. """ if allow_association_to_sharable_service_network is not None: pulumi.set(__self__, "allow_association_to_sharable_service_network", allow_association_to_sharable_service_network) @@ -61,6 +80,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="allowAssociationToSharableServiceNetwork") def allow_association_to_sharable_service_network(self) -> Optional[pulumi.Input[bool]]: + """ + Specifies whether the resource configuration can be associated with a sharable service network. + """ return pulumi.get(self, "allow_association_to_sharable_service_network") @allow_association_to_sharable_service_network.setter @@ -70,6 +92,9 @@ def allow_association_to_sharable_service_network(self, value: Optional[pulumi.I @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the resource configuration. + """ return pulumi.get(self, "name") @name.setter @@ -79,6 +104,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portRanges") def port_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + """ return pulumi.get(self, "port_ranges") @port_ranges.setter @@ -88,6 +116,9 @@ def port_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] @property @pulumi.getter(name="protocolType") def protocol_type(self) -> Optional[pulumi.Input['ResourceConfigurationProtocolType']]: + """ + (SINGLE, GROUP) The protocol accepted by the resource configuration. + """ return pulumi.get(self, "protocol_type") @protocol_type.setter @@ -97,6 +128,9 @@ def protocol_type(self, value: Optional[pulumi.Input['ResourceConfigurationProto @property @pulumi.getter(name="resourceConfigurationAuthType") def resource_configuration_auth_type(self) -> Optional[pulumi.Input['ResourceConfigurationAuthType']]: + """ + The auth type for the resource configuration. + """ return pulumi.get(self, "resource_configuration_auth_type") @resource_configuration_auth_type.setter @@ -106,6 +140,13 @@ def resource_configuration_auth_type(self, value: Optional[pulumi.Input['Resourc @property @pulumi.getter(name="resourceConfigurationDefinition") def resource_configuration_definition(self) -> Optional[pulumi.Input[Union['ResourceConfigurationDefinition0PropertiesArgs', 'ResourceConfigurationDefinition1PropertiesArgs', 'ResourceConfigurationDefinition2PropertiesArgs']]]: + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ return pulumi.get(self, "resource_configuration_definition") @resource_configuration_definition.setter @@ -115,6 +156,9 @@ def resource_configuration_definition(self, value: Optional[pulumi.Input[Union[' @property @pulumi.getter(name="resourceConfigurationGroupId") def resource_configuration_group_id(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the group resource configuration. + """ return pulumi.get(self, "resource_configuration_group_id") @resource_configuration_group_id.setter @@ -124,6 +168,14 @@ def resource_configuration_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="resourceConfigurationType") def resource_configuration_type(self) -> Optional[pulumi.Input['ResourceConfigurationType']]: + """ + The type of resource configuration. A resource configuration can be one of the following types: + + - *SINGLE* - A single resource. + - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + - *CHILD* - A single resource that is part of a group resource configuration. + - *ARN* - An AWS resource. + """ return pulumi.get(self, "resource_configuration_type") @resource_configuration_type.setter @@ -133,6 +185,9 @@ def resource_configuration_type(self, value: Optional[pulumi.Input['ResourceConf @property @pulumi.getter(name="resourceGatewayId") def resource_gateway_id(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the resource gateway. + """ return pulumi.get(self, "resource_gateway_id") @resource_gateway_id.setter @@ -142,6 +197,9 @@ def resource_gateway_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: + """ + The tags for the resource configuration. + """ return pulumi.get(self, "tags") @tags.setter @@ -170,6 +228,25 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[bool] allow_association_to_sharable_service_network: Specifies whether the resource configuration can be associated with a sharable service network. + :param pulumi.Input[str] name: The name of the resource configuration. + :param pulumi.Input[Sequence[pulumi.Input[str]]] port_ranges: (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + :param pulumi.Input['ResourceConfigurationProtocolType'] protocol_type: (SINGLE, GROUP) The protocol accepted by the resource configuration. + :param pulumi.Input['ResourceConfigurationAuthType'] resource_configuration_auth_type: The auth type for the resource configuration. + :param pulumi.Input[Union[Union['ResourceConfigurationDefinition0PropertiesArgs', 'ResourceConfigurationDefinition0PropertiesArgsDict'], Union['ResourceConfigurationDefinition1PropertiesArgs', 'ResourceConfigurationDefinition1PropertiesArgsDict'], Union['ResourceConfigurationDefinition2PropertiesArgs', 'ResourceConfigurationDefinition2PropertiesArgsDict']]] resource_configuration_definition: Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + :param pulumi.Input[str] resource_configuration_group_id: The ID of the group resource configuration. + :param pulumi.Input['ResourceConfigurationType'] resource_configuration_type: The type of resource configuration. A resource configuration can be one of the following types: + + - *SINGLE* - A single resource. + - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + - *CHILD* - A single resource that is part of a group resource configuration. + - *ARN* - An AWS resource. + :param pulumi.Input[str] resource_gateway_id: The ID of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: The tags for the resource configuration. """ ... @overload @@ -267,60 +344,105 @@ def get(resource_name: str, @property @pulumi.getter(name="allowAssociationToSharableServiceNetwork") def allow_association_to_sharable_service_network(self) -> pulumi.Output[Optional[bool]]: + """ + Specifies whether the resource configuration can be associated with a sharable service network. + """ return pulumi.get(self, "allow_association_to_sharable_service_network") @property @pulumi.getter def arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the resource configuration. + """ return pulumi.get(self, "arn") @property @pulumi.getter(name="awsId") def aws_id(self) -> pulumi.Output[str]: + """ + The ID of the resource configuration. + """ return pulumi.get(self, "aws_id") @property @pulumi.getter def name(self) -> pulumi.Output[Optional[str]]: + """ + The name of the resource configuration. + """ return pulumi.get(self, "name") @property @pulumi.getter(name="portRanges") def port_ranges(self) -> pulumi.Output[Optional[Sequence[str]]]: + """ + (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30). + """ return pulumi.get(self, "port_ranges") @property @pulumi.getter(name="protocolType") def protocol_type(self) -> pulumi.Output[Optional['ResourceConfigurationProtocolType']]: + """ + (SINGLE, GROUP) The protocol accepted by the resource configuration. + """ return pulumi.get(self, "protocol_type") @property @pulumi.getter(name="resourceConfigurationAuthType") def resource_configuration_auth_type(self) -> pulumi.Output[Optional['ResourceConfigurationAuthType']]: + """ + The auth type for the resource configuration. + """ return pulumi.get(self, "resource_configuration_auth_type") @property @pulumi.getter(name="resourceConfigurationDefinition") def resource_configuration_definition(self) -> pulumi.Output[Optional[Any]]: + """ + Identifies the resource configuration in one of the following ways: + + - *Amazon Resource Name (ARN)* - Supported resource-types that are provisioned by AWS services, such as RDS databases, can be identified by their ARN. + - *Domain name* - Any domain name that is publicly resolvable. + - *IP address* - For IPv4 and IPv6, only IP addresses in the VPC are supported. + """ return pulumi.get(self, "resource_configuration_definition") @property @pulumi.getter(name="resourceConfigurationGroupId") def resource_configuration_group_id(self) -> pulumi.Output[Optional[str]]: + """ + The ID of the group resource configuration. + """ return pulumi.get(self, "resource_configuration_group_id") @property @pulumi.getter(name="resourceConfigurationType") def resource_configuration_type(self) -> pulumi.Output[Optional['ResourceConfigurationType']]: + """ + The type of resource configuration. A resource configuration can be one of the following types: + + - *SINGLE* - A single resource. + - *GROUP* - A group of resources. You must create a group resource configuration before you create a child resource configuration. + - *CHILD* - A single resource that is part of a group resource configuration. + - *ARN* - An AWS resource. + """ return pulumi.get(self, "resource_configuration_type") @property @pulumi.getter(name="resourceGatewayId") def resource_gateway_id(self) -> pulumi.Output[Optional[str]]: + """ + The ID of the resource gateway. + """ return pulumi.get(self, "resource_gateway_id") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: + """ + The tags for the resource configuration. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/vpclattice/resource_gateway.py b/sdk/python/pulumi_aws_native/vpclattice/resource_gateway.py index fecdb9c9c2..87ea095af4 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/resource_gateway.py +++ b/sdk/python/pulumi_aws_native/vpclattice/resource_gateway.py @@ -30,8 +30,12 @@ def __init__(__self__, *, vpc_identifier: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ResourceGateway resource. + :param pulumi.Input['ResourceGatewayIpAddressType'] ip_address_type: The type of IP address used by the resource gateway. + :param pulumi.Input[str] name: The name of the resource gateway. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The ID of one or more security groups to associate with the endpoint network interface. :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: The ID of one or more subnets in which to create an endpoint network interface. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: The tags for the resource gateway. + :param pulumi.Input[str] vpc_identifier: The ID of the VPC for the resource gateway. """ if ip_address_type is not None: pulumi.set(__self__, "ip_address_type", ip_address_type) @@ -49,6 +53,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddressType") def ip_address_type(self) -> Optional[pulumi.Input['ResourceGatewayIpAddressType']]: + """ + The type of IP address used by the resource gateway. + """ return pulumi.get(self, "ip_address_type") @ip_address_type.setter @@ -58,6 +65,9 @@ def ip_address_type(self, value: Optional[pulumi.Input['ResourceGatewayIpAddress @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the resource gateway. + """ return pulumi.get(self, "name") @name.setter @@ -91,6 +101,9 @@ def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]) @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: + """ + The tags for the resource gateway. + """ return pulumi.get(self, "tags") @tags.setter @@ -100,6 +113,9 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs. @property @pulumi.getter(name="vpcIdentifier") def vpc_identifier(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the VPC for the resource gateway. + """ return pulumi.get(self, "vpc_identifier") @vpc_identifier.setter @@ -124,8 +140,12 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input['ResourceGatewayIpAddressType'] ip_address_type: The type of IP address used by the resource gateway. + :param pulumi.Input[str] name: The name of the resource gateway. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The ID of one or more security groups to associate with the endpoint network interface. :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: The ID of one or more subnets in which to create an endpoint network interface. + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: The tags for the resource gateway. + :param pulumi.Input[str] vpc_identifier: The ID of the VPC for the resource gateway. """ ... @overload @@ -211,21 +231,33 @@ def get(resource_name: str, @property @pulumi.getter def arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the resource gateway. + """ return pulumi.get(self, "arn") @property @pulumi.getter(name="awsId") def aws_id(self) -> pulumi.Output[str]: + """ + The ID of the resource gateway. + """ return pulumi.get(self, "aws_id") @property @pulumi.getter(name="ipAddressType") def ip_address_type(self) -> pulumi.Output[Optional['ResourceGatewayIpAddressType']]: + """ + The type of IP address used by the resource gateway. + """ return pulumi.get(self, "ip_address_type") @property @pulumi.getter def name(self) -> pulumi.Output[Optional[str]]: + """ + The name of the resource gateway. + """ return pulumi.get(self, "name") @property @@ -247,10 +279,16 @@ def subnet_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: + """ + The tags for the resource gateway. + """ return pulumi.get(self, "tags") @property @pulumi.getter(name="vpcIdentifier") def vpc_identifier(self) -> pulumi.Output[Optional[str]]: + """ + The ID of the VPC for the resource gateway. + """ return pulumi.get(self, "vpc_identifier") diff --git a/sdk/python/pulumi_aws_native/vpclattice/service_network.py b/sdk/python/pulumi_aws_native/vpclattice/service_network.py index 2239a1f0a8..9e9d920465 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/service_network.py +++ b/sdk/python/pulumi_aws_native/vpclattice/service_network.py @@ -37,6 +37,7 @@ def __init__(__self__, *, :param pulumi.Input[str] name: The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen. If you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name. + :param pulumi.Input['ServiceNetworkSharingConfigArgs'] sharing_config: Specify if the service network should be enabled for sharing. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: The tags for the service network. """ if auth_type is not None: @@ -80,6 +81,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sharingConfig") def sharing_config(self) -> Optional[pulumi.Input['ServiceNetworkSharingConfigArgs']]: + """ + Specify if the service network should be enabled for sharing. + """ return pulumi.get(self, "sharing_config") @sharing_config.setter @@ -121,6 +125,7 @@ def __init__(__self__, :param pulumi.Input[str] name: The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen. If you don't specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name. + :param pulumi.Input[Union['ServiceNetworkSharingConfigArgs', 'ServiceNetworkSharingConfigArgsDict']] sharing_config: Specify if the service network should be enabled for sharing. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: The tags for the service network. """ ... @@ -258,6 +263,9 @@ def name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="sharingConfig") def sharing_config(self) -> pulumi.Output[Optional['outputs.ServiceNetworkSharingConfig']]: + """ + Specify if the service network should be enabled for sharing. + """ return pulumi.get(self, "sharing_config") @property diff --git a/sdk/python/pulumi_aws_native/vpclattice/service_network_resource_association.py b/sdk/python/pulumi_aws_native/vpclattice/service_network_resource_association.py index 1f4d099f0b..86da3db6e1 100644 --- a/sdk/python/pulumi_aws_native/vpclattice/service_network_resource_association.py +++ b/sdk/python/pulumi_aws_native/vpclattice/service_network_resource_association.py @@ -26,6 +26,9 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a ServiceNetworkResourceAssociation resource. + :param pulumi.Input[str] resource_configuration_id: The ID of the resource configuration associated with the service network. + :param pulumi.Input[str] service_network_id: The ID of the service network associated with the resource configuration. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: A key-value pair to associate with a resource. """ if resource_configuration_id is not None: pulumi.set(__self__, "resource_configuration_id", resource_configuration_id) @@ -37,6 +40,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="resourceConfigurationId") def resource_configuration_id(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the resource configuration associated with the service network. + """ return pulumi.get(self, "resource_configuration_id") @resource_configuration_id.setter @@ -46,6 +52,9 @@ def resource_configuration_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="serviceNetworkId") def service_network_id(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the service network associated with the resource configuration. + """ return pulumi.get(self, "service_network_id") @service_network_id.setter @@ -55,6 +64,9 @@ def service_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: + """ + A key-value pair to associate with a resource. + """ return pulumi.get(self, "tags") @tags.setter @@ -76,6 +88,9 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] resource_configuration_id: The ID of the resource configuration associated with the service network. + :param pulumi.Input[str] service_network_id: The ID of the service network associated with the resource configuration. + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: A key-value pair to associate with a resource. """ ... @overload @@ -152,25 +167,40 @@ def get(resource_name: str, @property @pulumi.getter def arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the association. + """ return pulumi.get(self, "arn") @property @pulumi.getter(name="awsId") def aws_id(self) -> pulumi.Output[str]: + """ + The ID of the association between the service network and resource configuration. + """ return pulumi.get(self, "aws_id") @property @pulumi.getter(name="resourceConfigurationId") def resource_configuration_id(self) -> pulumi.Output[Optional[str]]: + """ + The ID of the resource configuration associated with the service network. + """ return pulumi.get(self, "resource_configuration_id") @property @pulumi.getter(name="serviceNetworkId") def service_network_id(self) -> pulumi.Output[Optional[str]]: + """ + The ID of the service network associated with the resource configuration. + """ return pulumi.get(self, "service_network_id") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: + """ + A key-value pair to associate with a resource. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/wisdom/_inputs.py b/sdk/python/pulumi_aws_native/wisdom/_inputs.py index 92de3ec16b..a800fda34e 100644 --- a/sdk/python/pulumi_aws_native/wisdom/_inputs.py +++ b/sdk/python/pulumi_aws_native/wisdom/_inputs.py @@ -884,8 +884,17 @@ class AiGuardrailGuardrailContentFilterConfigArgsDict(TypedDict): Content filter config in content policy. """ input_strength: pulumi.Input['AiGuardrailGuardrailFilterStrength'] + """ + The strength of the input for the guardrail content filter. + """ output_strength: pulumi.Input['AiGuardrailGuardrailFilterStrength'] + """ + The output strength of the guardrail content filter. + """ type: pulumi.Input['AiGuardrailGuardrailContentFilterType'] + """ + The type of the guardrail content filter. + """ elif False: AiGuardrailGuardrailContentFilterConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -897,6 +906,9 @@ def __init__(__self__, *, type: pulumi.Input['AiGuardrailGuardrailContentFilterType']): """ Content filter config in content policy. + :param pulumi.Input['AiGuardrailGuardrailFilterStrength'] input_strength: The strength of the input for the guardrail content filter. + :param pulumi.Input['AiGuardrailGuardrailFilterStrength'] output_strength: The output strength of the guardrail content filter. + :param pulumi.Input['AiGuardrailGuardrailContentFilterType'] type: The type of the guardrail content filter. """ pulumi.set(__self__, "input_strength", input_strength) pulumi.set(__self__, "output_strength", output_strength) @@ -905,6 +917,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="inputStrength") def input_strength(self) -> pulumi.Input['AiGuardrailGuardrailFilterStrength']: + """ + The strength of the input for the guardrail content filter. + """ return pulumi.get(self, "input_strength") @input_strength.setter @@ -914,6 +929,9 @@ def input_strength(self, value: pulumi.Input['AiGuardrailGuardrailFilterStrength @property @pulumi.getter(name="outputStrength") def output_strength(self) -> pulumi.Input['AiGuardrailGuardrailFilterStrength']: + """ + The output strength of the guardrail content filter. + """ return pulumi.get(self, "output_strength") @output_strength.setter @@ -923,6 +941,9 @@ def output_strength(self, value: pulumi.Input['AiGuardrailGuardrailFilterStrengt @property @pulumi.getter def type(self) -> pulumi.Input['AiGuardrailGuardrailContentFilterType']: + """ + The type of the guardrail content filter. + """ return pulumi.get(self, "type") @type.setter @@ -940,6 +961,9 @@ class AiGuardrailGuardrailContextualGroundingFilterConfigArgsDict(TypedDict): The threshold for this filter. """ type: pulumi.Input['AiGuardrailGuardrailContextualGroundingFilterType'] + """ + The type of this filter. + """ elif False: AiGuardrailGuardrailContextualGroundingFilterConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -951,6 +975,7 @@ def __init__(__self__, *, """ A config for grounding filter. :param pulumi.Input[float] threshold: The threshold for this filter. + :param pulumi.Input['AiGuardrailGuardrailContextualGroundingFilterType'] type: The type of this filter. """ pulumi.set(__self__, "threshold", threshold) pulumi.set(__self__, "type", type) @@ -970,6 +995,9 @@ def threshold(self, value: pulumi.Input[float]): @property @pulumi.getter def type(self) -> pulumi.Input['AiGuardrailGuardrailContextualGroundingFilterType']: + """ + The type of this filter. + """ return pulumi.get(self, "type") @type.setter @@ -983,6 +1011,9 @@ class AiGuardrailGuardrailManagedWordsConfigArgsDict(TypedDict): A managed words config. """ type: pulumi.Input['AiGuardrailGuardrailManagedWordsType'] + """ + The type of guardrail managed words. + """ elif False: AiGuardrailGuardrailManagedWordsConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -992,12 +1023,16 @@ def __init__(__self__, *, type: pulumi.Input['AiGuardrailGuardrailManagedWordsType']): """ A managed words config. + :param pulumi.Input['AiGuardrailGuardrailManagedWordsType'] type: The type of guardrail managed words. """ pulumi.set(__self__, "type", type) @property @pulumi.getter def type(self) -> pulumi.Input['AiGuardrailGuardrailManagedWordsType']: + """ + The type of guardrail managed words. + """ return pulumi.get(self, "type") @type.setter @@ -1011,6 +1046,9 @@ class AiGuardrailGuardrailPiiEntityConfigArgsDict(TypedDict): Pii entity configuration. """ action: pulumi.Input['AiGuardrailGuardrailSensitiveInformationAction'] + """ + The action of guardrail PII entity configuration. + """ type: pulumi.Input['AiGuardrailGuardrailPiiEntityType'] elif False: AiGuardrailGuardrailPiiEntityConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -1022,6 +1060,7 @@ def __init__(__self__, *, type: pulumi.Input['AiGuardrailGuardrailPiiEntityType']): """ Pii entity configuration. + :param pulumi.Input['AiGuardrailGuardrailSensitiveInformationAction'] action: The action of guardrail PII entity configuration. """ pulumi.set(__self__, "action", action) pulumi.set(__self__, "type", type) @@ -1029,6 +1068,9 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> pulumi.Input['AiGuardrailGuardrailSensitiveInformationAction']: + """ + The action of guardrail PII entity configuration. + """ return pulumi.get(self, "action") @action.setter @@ -1051,6 +1093,9 @@ class AiGuardrailGuardrailRegexConfigArgsDict(TypedDict): A regex configuration. """ action: pulumi.Input['AiGuardrailGuardrailSensitiveInformationAction'] + """ + The action of the guardrail regex configuration. + """ name: pulumi.Input[str] """ The regex name. @@ -1075,6 +1120,7 @@ def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None): """ A regex configuration. + :param pulumi.Input['AiGuardrailGuardrailSensitiveInformationAction'] action: The action of the guardrail regex configuration. :param pulumi.Input[str] name: The regex name. :param pulumi.Input[str] pattern: The regex pattern. :param pulumi.Input[str] description: The regex description. @@ -1088,6 +1134,9 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> pulumi.Input['AiGuardrailGuardrailSensitiveInformationAction']: + """ + The action of the guardrail regex configuration. + """ return pulumi.get(self, "action") @action.setter @@ -1145,6 +1194,9 @@ class AiGuardrailGuardrailTopicConfigArgsDict(TypedDict): Name of topic in topic policy """ type: pulumi.Input['AiGuardrailGuardrailTopicType'] + """ + Type of topic in a policy. + """ examples: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ List of text examples @@ -1163,6 +1215,7 @@ def __init__(__self__, *, Topic config in topic policy. :param pulumi.Input[str] definition: Definition of topic in topic policy :param pulumi.Input[str] name: Name of topic in topic policy + :param pulumi.Input['AiGuardrailGuardrailTopicType'] type: Type of topic in a policy. :param pulumi.Input[Sequence[pulumi.Input[str]]] examples: List of text examples """ pulumi.set(__self__, "definition", definition) @@ -1198,6 +1251,9 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def type(self) -> pulumi.Input['AiGuardrailGuardrailTopicType']: + """ + Type of topic in a policy. + """ return pulumi.get(self, "type") @type.setter @@ -1364,6 +1420,9 @@ def object_fields(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] if not MYPY: class KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgsDict(TypedDict): + """ + The parsing prompt of the Bedrock foundation model configuration. + """ parsing_prompt_text: pulumi.Input[str] elif False: KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgsDict: TypeAlias = Mapping[str, Any] @@ -1372,6 +1431,9 @@ class KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArg class KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs: def __init__(__self__, *, parsing_prompt_text: pulumi.Input[str]): + """ + The parsing prompt of the Bedrock foundation model configuration. + """ pulumi.set(__self__, "parsing_prompt_text", parsing_prompt_text) @property @@ -1387,7 +1449,13 @@ def parsing_prompt_text(self, value: pulumi.Input[str]): if not MYPY: class KnowledgeBaseBedrockFoundationModelConfigurationArgsDict(TypedDict): model_arn: pulumi.Input[str] + """ + The model ARN of the Bedrock foundation model. + """ parsing_prompt: NotRequired[pulumi.Input['KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgsDict']] + """ + The parsing prompt of the Bedrock foundation model configuration. + """ elif False: KnowledgeBaseBedrockFoundationModelConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -1396,6 +1464,10 @@ class KnowledgeBaseBedrockFoundationModelConfigurationArgs: def __init__(__self__, *, model_arn: pulumi.Input[str], parsing_prompt: Optional[pulumi.Input['KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs']] = None): + """ + :param pulumi.Input[str] model_arn: The model ARN of the Bedrock foundation model. + :param pulumi.Input['KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs'] parsing_prompt: The parsing prompt of the Bedrock foundation model configuration. + """ pulumi.set(__self__, "model_arn", model_arn) if parsing_prompt is not None: pulumi.set(__self__, "parsing_prompt", parsing_prompt) @@ -1403,6 +1475,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="modelArn") def model_arn(self) -> pulumi.Input[str]: + """ + The model ARN of the Bedrock foundation model. + """ return pulumi.get(self, "model_arn") @model_arn.setter @@ -1412,6 +1487,9 @@ def model_arn(self, value: pulumi.Input[str]): @property @pulumi.getter(name="parsingPrompt") def parsing_prompt(self) -> Optional[pulumi.Input['KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptPropertiesArgs']]: + """ + The parsing prompt of the Bedrock foundation model configuration. + """ return pulumi.get(self, "parsing_prompt") @parsing_prompt.setter diff --git a/sdk/python/pulumi_aws_native/wisdom/ai_guardrail_version.py b/sdk/python/pulumi_aws_native/wisdom/ai_guardrail_version.py index 5a4e4857cf..2cb25f1d77 100644 --- a/sdk/python/pulumi_aws_native/wisdom/ai_guardrail_version.py +++ b/sdk/python/pulumi_aws_native/wisdom/ai_guardrail_version.py @@ -24,6 +24,9 @@ def __init__(__self__, *, modified_time_seconds: Optional[pulumi.Input[float]] = None): """ The set of arguments for constructing a AiGuardrailVersion resource. + :param pulumi.Input[str] ai_guardrail_id: The ID of the AI guardrail version. + :param pulumi.Input[str] assistant_id: The ID of the AI guardrail version assistant. + :param pulumi.Input[float] modified_time_seconds: The modified time of the AI guardrail version in seconds. """ pulumi.set(__self__, "ai_guardrail_id", ai_guardrail_id) pulumi.set(__self__, "assistant_id", assistant_id) @@ -33,6 +36,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="aiGuardrailId") def ai_guardrail_id(self) -> pulumi.Input[str]: + """ + The ID of the AI guardrail version. + """ return pulumi.get(self, "ai_guardrail_id") @ai_guardrail_id.setter @@ -42,6 +48,9 @@ def ai_guardrail_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="assistantId") def assistant_id(self) -> pulumi.Input[str]: + """ + The ID of the AI guardrail version assistant. + """ return pulumi.get(self, "assistant_id") @assistant_id.setter @@ -51,6 +60,9 @@ def assistant_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="modifiedTimeSeconds") def modified_time_seconds(self) -> Optional[pulumi.Input[float]]: + """ + The modified time of the AI guardrail version in seconds. + """ return pulumi.get(self, "modified_time_seconds") @modified_time_seconds.setter @@ -72,6 +84,9 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] ai_guardrail_id: The ID of the AI guardrail version. + :param pulumi.Input[str] assistant_id: The ID of the AI guardrail version assistant. + :param pulumi.Input[float] modified_time_seconds: The modified time of the AI guardrail version in seconds. """ ... @overload @@ -156,31 +171,49 @@ def get(resource_name: str, @property @pulumi.getter(name="aiGuardrailArn") def ai_guardrail_arn(self) -> pulumi.Output[str]: + """ + The ARN of the AI guardrail version. + """ return pulumi.get(self, "ai_guardrail_arn") @property @pulumi.getter(name="aiGuardrailId") def ai_guardrail_id(self) -> pulumi.Output[str]: + """ + The ID of the AI guardrail version. + """ return pulumi.get(self, "ai_guardrail_id") @property @pulumi.getter(name="aiGuardrailVersionId") def ai_guardrail_version_id(self) -> pulumi.Output[str]: + """ + The ID of the AI guardrail version. + """ return pulumi.get(self, "ai_guardrail_version_id") @property @pulumi.getter(name="assistantArn") def assistant_arn(self) -> pulumi.Output[str]: + """ + The ARN of the AI guardrail version assistant. + """ return pulumi.get(self, "assistant_arn") @property @pulumi.getter(name="assistantId") def assistant_id(self) -> pulumi.Output[str]: + """ + The ID of the AI guardrail version assistant. + """ return pulumi.get(self, "assistant_id") @property @pulumi.getter(name="modifiedTimeSeconds") def modified_time_seconds(self) -> pulumi.Output[Optional[float]]: + """ + The modified time of the AI guardrail version in seconds. + """ return pulumi.get(self, "modified_time_seconds") @property diff --git a/sdk/python/pulumi_aws_native/wisdom/ai_prompt_version.py b/sdk/python/pulumi_aws_native/wisdom/ai_prompt_version.py index bd0b7cc756..7dd83313a7 100644 --- a/sdk/python/pulumi_aws_native/wisdom/ai_prompt_version.py +++ b/sdk/python/pulumi_aws_native/wisdom/ai_prompt_version.py @@ -171,6 +171,9 @@ def get(resource_name: str, @property @pulumi.getter(name="aiPromptArn") def ai_prompt_arn(self) -> pulumi.Output[str]: + """ + The ARN of the AI prompt. + """ return pulumi.get(self, "ai_prompt_arn") @property diff --git a/sdk/python/pulumi_aws_native/wisdom/get_ai_guardrail_version.py b/sdk/python/pulumi_aws_native/wisdom/get_ai_guardrail_version.py index 7c0f6b72e6..d074e44f9b 100644 --- a/sdk/python/pulumi_aws_native/wisdom/get_ai_guardrail_version.py +++ b/sdk/python/pulumi_aws_native/wisdom/get_ai_guardrail_version.py @@ -40,16 +40,25 @@ def __init__(__self__, ai_guardrail_arn=None, ai_guardrail_version_id=None, assi @property @pulumi.getter(name="aiGuardrailArn") def ai_guardrail_arn(self) -> Optional[str]: + """ + The ARN of the AI guardrail version. + """ return pulumi.get(self, "ai_guardrail_arn") @property @pulumi.getter(name="aiGuardrailVersionId") def ai_guardrail_version_id(self) -> Optional[str]: + """ + The ID of the AI guardrail version. + """ return pulumi.get(self, "ai_guardrail_version_id") @property @pulumi.getter(name="assistantArn") def assistant_arn(self) -> Optional[str]: + """ + The ARN of the AI guardrail version assistant. + """ return pulumi.get(self, "assistant_arn") @property @@ -81,6 +90,8 @@ def get_ai_guardrail_version(ai_guardrail_id: Optional[str] = None, Definition of AWS::Wisdom::AIGuardrailVersion Resource Type + :param str ai_guardrail_id: The ID of the AI guardrail version. + :param str assistant_id: The ID of the AI guardrail version assistant. :param float version_number: The version number for this AI Guardrail version. """ __args__ = dict() @@ -103,6 +114,8 @@ def get_ai_guardrail_version_output(ai_guardrail_id: Optional[pulumi.Input[str]] Definition of AWS::Wisdom::AIGuardrailVersion Resource Type + :param str ai_guardrail_id: The ID of the AI guardrail version. + :param str assistant_id: The ID of the AI guardrail version assistant. :param float version_number: The version number for this AI Guardrail version. """ __args__ = dict() diff --git a/sdk/python/pulumi_aws_native/wisdom/get_ai_prompt_version.py b/sdk/python/pulumi_aws_native/wisdom/get_ai_prompt_version.py index 119837d40d..3a803ce837 100644 --- a/sdk/python/pulumi_aws_native/wisdom/get_ai_prompt_version.py +++ b/sdk/python/pulumi_aws_native/wisdom/get_ai_prompt_version.py @@ -40,6 +40,9 @@ def __init__(__self__, ai_prompt_arn=None, ai_prompt_version_id=None, assistant_ @property @pulumi.getter(name="aiPromptArn") def ai_prompt_arn(self) -> Optional[str]: + """ + The ARN of the AI prompt. + """ return pulumi.get(self, "ai_prompt_arn") @property diff --git a/sdk/python/pulumi_aws_native/wisdom/outputs.py b/sdk/python/pulumi_aws_native/wisdom/outputs.py index 4e98b91aad..27903959b3 100644 --- a/sdk/python/pulumi_aws_native/wisdom/outputs.py +++ b/sdk/python/pulumi_aws_native/wisdom/outputs.py @@ -897,6 +897,9 @@ def __init__(__self__, *, type: 'AiGuardrailGuardrailContentFilterType'): """ Content filter config in content policy. + :param 'AiGuardrailGuardrailFilterStrength' input_strength: The strength of the input for the guardrail content filter. + :param 'AiGuardrailGuardrailFilterStrength' output_strength: The output strength of the guardrail content filter. + :param 'AiGuardrailGuardrailContentFilterType' type: The type of the guardrail content filter. """ pulumi.set(__self__, "input_strength", input_strength) pulumi.set(__self__, "output_strength", output_strength) @@ -905,16 +908,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="inputStrength") def input_strength(self) -> 'AiGuardrailGuardrailFilterStrength': + """ + The strength of the input for the guardrail content filter. + """ return pulumi.get(self, "input_strength") @property @pulumi.getter(name="outputStrength") def output_strength(self) -> 'AiGuardrailGuardrailFilterStrength': + """ + The output strength of the guardrail content filter. + """ return pulumi.get(self, "output_strength") @property @pulumi.getter def type(self) -> 'AiGuardrailGuardrailContentFilterType': + """ + The type of the guardrail content filter. + """ return pulumi.get(self, "type") @@ -929,6 +941,7 @@ def __init__(__self__, *, """ A config for grounding filter. :param float threshold: The threshold for this filter. + :param 'AiGuardrailGuardrailContextualGroundingFilterType' type: The type of this filter. """ pulumi.set(__self__, "threshold", threshold) pulumi.set(__self__, "type", type) @@ -944,6 +957,9 @@ def threshold(self) -> float: @property @pulumi.getter def type(self) -> 'AiGuardrailGuardrailContextualGroundingFilterType': + """ + The type of this filter. + """ return pulumi.get(self, "type") @@ -956,12 +972,16 @@ def __init__(__self__, *, type: 'AiGuardrailGuardrailManagedWordsType'): """ A managed words config. + :param 'AiGuardrailGuardrailManagedWordsType' type: The type of guardrail managed words. """ pulumi.set(__self__, "type", type) @property @pulumi.getter def type(self) -> 'AiGuardrailGuardrailManagedWordsType': + """ + The type of guardrail managed words. + """ return pulumi.get(self, "type") @@ -975,6 +995,7 @@ def __init__(__self__, *, type: 'AiGuardrailGuardrailPiiEntityType'): """ Pii entity configuration. + :param 'AiGuardrailGuardrailSensitiveInformationAction' action: The action of guardrail PII entity configuration. """ pulumi.set(__self__, "action", action) pulumi.set(__self__, "type", type) @@ -982,6 +1003,9 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> 'AiGuardrailGuardrailSensitiveInformationAction': + """ + The action of guardrail PII entity configuration. + """ return pulumi.get(self, "action") @property @@ -1002,6 +1026,7 @@ def __init__(__self__, *, description: Optional[str] = None): """ A regex configuration. + :param 'AiGuardrailGuardrailSensitiveInformationAction' action: The action of the guardrail regex configuration. :param str name: The regex name. :param str pattern: The regex pattern. :param str description: The regex description. @@ -1015,6 +1040,9 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> 'AiGuardrailGuardrailSensitiveInformationAction': + """ + The action of the guardrail regex configuration. + """ return pulumi.get(self, "action") @property @@ -1056,6 +1084,7 @@ def __init__(__self__, *, Topic config in topic policy. :param str definition: Definition of topic in topic policy :param str name: Name of topic in topic policy + :param 'AiGuardrailGuardrailTopicType' type: Type of topic in a policy. :param Sequence[str] examples: List of text examples """ pulumi.set(__self__, "definition", definition) @@ -1083,6 +1112,9 @@ def name(self) -> str: @property @pulumi.getter def type(self) -> 'AiGuardrailGuardrailTopicType': + """ + Type of topic in a policy. + """ return pulumi.get(self, "type") @property @@ -1256,6 +1288,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, model_arn: str, parsing_prompt: Optional['outputs.KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties'] = None): + """ + :param str model_arn: The model ARN of the Bedrock foundation model. + :param 'KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties' parsing_prompt: The parsing prompt of the Bedrock foundation model configuration. + """ pulumi.set(__self__, "model_arn", model_arn) if parsing_prompt is not None: pulumi.set(__self__, "parsing_prompt", parsing_prompt) @@ -1263,16 +1299,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="modelArn") def model_arn(self) -> str: + """ + The model ARN of the Bedrock foundation model. + """ return pulumi.get(self, "model_arn") @property @pulumi.getter(name="parsingPrompt") def parsing_prompt(self) -> Optional['outputs.KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties']: + """ + The parsing prompt of the Bedrock foundation model configuration. + """ return pulumi.get(self, "parsing_prompt") @pulumi.output_type class KnowledgeBaseBedrockFoundationModelConfigurationParsingPromptProperties(dict): + """ + The parsing prompt of the Bedrock foundation model configuration. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -1292,6 +1337,9 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, parsing_prompt_text: str): + """ + The parsing prompt of the Bedrock foundation model configuration. + """ pulumi.set(__self__, "parsing_prompt_text", parsing_prompt_text) @property diff --git a/sdk/python/pulumi_aws_native/workspaces/get_workspaces_pool.py b/sdk/python/pulumi_aws_native/workspaces/get_workspaces_pool.py index 9554764df6..7479cd01ff 100644 --- a/sdk/python/pulumi_aws_native/workspaces/get_workspaces_pool.py +++ b/sdk/python/pulumi_aws_native/workspaces/get_workspaces_pool.py @@ -14,6 +14,7 @@ from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities from . import outputs +from .. import outputs as _root_outputs from ._enums import * __all__ = [ @@ -25,7 +26,7 @@ @pulumi.output_type class GetWorkspacesPoolResult: - def __init__(__self__, application_settings=None, bundle_id=None, capacity=None, created_at=None, description=None, directory_id=None, pool_arn=None, pool_id=None, timeout_settings=None): + def __init__(__self__, application_settings=None, bundle_id=None, capacity=None, created_at=None, description=None, directory_id=None, pool_arn=None, pool_id=None, tags=None, timeout_settings=None): if application_settings and not isinstance(application_settings, dict): raise TypeError("Expected argument 'application_settings' to be a dict") pulumi.set(__self__, "application_settings", application_settings) @@ -50,6 +51,9 @@ def __init__(__self__, application_settings=None, bundle_id=None, capacity=None, if pool_id and not isinstance(pool_id, str): raise TypeError("Expected argument 'pool_id' to be a str") pulumi.set(__self__, "pool_id", pool_id) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) if timeout_settings and not isinstance(timeout_settings, dict): raise TypeError("Expected argument 'timeout_settings' to be a dict") pulumi.set(__self__, "timeout_settings", timeout_settings) @@ -118,6 +122,11 @@ def pool_id(self) -> Optional[str]: """ return pulumi.get(self, "pool_id") + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + return pulumi.get(self, "tags") + @property @pulumi.getter(name="timeoutSettings") def timeout_settings(self) -> Optional['outputs.WorkspacesPoolTimeoutSettings']: @@ -141,6 +150,7 @@ def __await__(self): directory_id=self.directory_id, pool_arn=self.pool_arn, pool_id=self.pool_id, + tags=self.tags, timeout_settings=self.timeout_settings) @@ -166,6 +176,7 @@ def get_workspaces_pool(pool_id: Optional[str] = None, directory_id=pulumi.get(__ret__, 'directory_id'), pool_arn=pulumi.get(__ret__, 'pool_arn'), pool_id=pulumi.get(__ret__, 'pool_id'), + tags=pulumi.get(__ret__, 'tags'), timeout_settings=pulumi.get(__ret__, 'timeout_settings')) def get_workspaces_pool_output(pool_id: Optional[pulumi.Input[str]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetWorkspacesPoolResult]: @@ -188,4 +199,5 @@ def get_workspaces_pool_output(pool_id: Optional[pulumi.Input[str]] = None, directory_id=pulumi.get(__response__, 'directory_id'), pool_arn=pulumi.get(__response__, 'pool_arn'), pool_id=pulumi.get(__response__, 'pool_id'), + tags=pulumi.get(__response__, 'tags'), timeout_settings=pulumi.get(__response__, 'timeout_settings'))) diff --git a/sdk/python/pulumi_aws_native/workspaces/workspaces_pool.py b/sdk/python/pulumi_aws_native/workspaces/workspaces_pool.py index 68d5d9520b..d125c3a2f6 100644 --- a/sdk/python/pulumi_aws_native/workspaces/workspaces_pool.py +++ b/sdk/python/pulumi_aws_native/workspaces/workspaces_pool.py @@ -40,7 +40,6 @@ def __init__(__self__, *, :param pulumi.Input['WorkspacesPoolApplicationSettingsArgs'] application_settings: The persistent application settings for users of the pool. :param pulumi.Input[str] description: The description of the pool. :param pulumi.Input[str] pool_name: The name of the pool. - :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: The tags for the pool. :param pulumi.Input['WorkspacesPoolTimeoutSettingsArgs'] timeout_settings: The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. """ pulumi.set(__self__, "bundle_id", bundle_id) @@ -132,9 +131,6 @@ def pool_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: - """ - The tags for the pool. - """ return pulumi.get(self, "tags") @tags.setter @@ -179,7 +175,6 @@ def __init__(__self__, :param pulumi.Input[str] description: The description of the pool. :param pulumi.Input[str] directory_id: The identifier of the directory used by the pool. :param pulumi.Input[str] pool_name: The name of the pool. - :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: The tags for the pool. :param pulumi.Input[Union['WorkspacesPoolTimeoutSettingsArgs', 'WorkspacesPoolTimeoutSettingsArgsDict']] timeout_settings: The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. """ ... @@ -352,9 +347,6 @@ def pool_name(self) -> pulumi.Output[str]: @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: - """ - The tags for the pool. - """ return pulumi.get(self, "tags") @property